ORM práce s entitou a vytvoření tabulky
- Albenis
- Člen | 11
Ahoj,
snažím se rozchodit ORM ( Nettrine ) na Nette 3.0.
Mám založenou Entitu User v App\Model\Database\User.php
V configu je jako
orm.annotation:
paths:
- App\Model\Database\User
Jak vytvořím table v databázi pomocí té entity ?
- nedá se nějak docílit toho, aby se mi Entity mapovali sami ? a nemusel jsem každou registrovat do configu ?
Díky moc :)
- Mysteria
- Člen | 797
- Nainstaluješ si Symfony Console a ORM Bridge: https://github.com/…cs/README.md#…
- Zkus tam dát místo konkrétní entity jenom
App\Model\Database
- Albenis
- Člen | 11
Takhle vypadá můj common.neon ( v php tagu je to pro čitelnost )
<?php
extensions:
console: Contributte\Console\DI\ConsoleExtension(%consoleMode%)
dbal: Nettrine\DBAL\DI\DbalExtension
dbal.console: Nettrine\DBAL\DI\DbalConsoleExtension
orm: Nettrine\ORM\DI\OrmExtension
orm.console: Nettrine\ORM\DI\OrmConsoleExtension
orm.annotation: Nettrine\ORM\DI\OrmAnnotationsExtension
services:
- App\Console\CreateUserCommand
router: App\Router\RouterFactory::createRouter
console:
name: CRM | Znamý web
version: '1.0'
catchExceptions: true
autoExit: false
lazy: true
url: https://www.znamyweb.cz
orm.annotation:
excludePaths: []
ignore: []
defaultCache: filesystem
paths:
- App\Model\Entity
?>
A takhle vypadá má Entita, která se nachází v app/Model/Entity/User.php
<?php
namespace App\Model\Entity;
use Doctrine\ORM\Mapping as ORM;
use Nettrine\ORM\Entity\Attributes\Id;
/**
* Class User
* @package App\Model\Entity
* @ORM\Entity
*/
class User
{
use Id;
}
?>
- jiri.pudil
- Nette Blogger | 1028
To je myslím docela srozumitelná chybová hláška :) V
orm.annotation.paths
nemá být PHP namespace, nýbrž cesta ke
složce, ve které se nacházejí entity. Takže
třeba %appDir%
- Albenis
- Člen | 11
Tak v tom případě je dokumentace napsána docela podivně..
https://github.com/…cs/README.md#…
<?php
orm.annotations:
paths:
- App/Model/Database/Entity
?>