ORM a definice typu DateTime
- Michwuanquana
- Člen | 22
Zdravím,
pokouším se definovat typ v ORM entitě:
//..
#[ORM\Column(type: "datetime", nullable: TRUE)]
private DateTime $lastLoggedAt;
//..
ale vyhazuje chybu
Cannot assign DateTime to property App\Model\Database\Entity\User::$lastLoggedAt of type Nette\Utils\DateTime
Pokud definuji build-in typ \DateTime
, tak to funguje. Nevíte,
jak to vyřešit?
Editoval Michwuanquana (3. 5. 2022 7:35)
- Pepino
- Člen | 257
@Michwuanquana řekl bych, že to je tím, že doctrine nezná
Nette\Utils\DateTime
. Řešení může být napsat si vlastní typ
sloupce, který bude používat právě Nette\Utils\DateTime
. https://www.doctrine-project.org/…g-types.html
Nezapomeň pak zaregistrovat v neonu
nettrine.dbal:
connection:
types:
nette_datetime: App\Model\ORM\Types\NetteDateTime
a změnit typ sloupce na nette_datetime
#[ORM\Column(type: "nette_datetime", nullable: TRUE)]
- petr.pavel
- Člen | 535
Proč potřebuješ, aby v entitě bylo \Nette\Utils\DateTime
a
ne \DateTime
? Chápal bych, kdybys tam chtěl
\DateTimeImmutable
;-)