Chyby po přepnutí z Kdyby/Doctrine na Nettrine/ORM
- pavelinnuendo
- Člen | 33
Ahoj,
nenašel jsem žádný návod, který by přechod na Nettrine/ORM popisoval. Při instalaci a konfiguraci jsem vycházel z https://github.com/…ine-skeleton.
Základ funguje, ale nedokáži vyřešit následující chyby. Napadá vás, kde by mohl být zakopený pes?
Error
xdebug_message:
'
Error: Class 'Nettrine\Proxy\__CG__\App\Model\Entities\User' not found in /var/www/html/vendor/doctrine/common/lib/Doctrine/Common/Proxy/AbstractProx … ex.php:10'
message: 'Class 'Nettrine\Proxy\__CG__\App\Model\Entities\User' not found'
string: ''
code: 0
file: '/var/www/html/vendor/doctrine/common/lib/Doctrine/Common/Proxy/AbstractProxyFactory.php'
line: 100
trace: array
previous: null
Call stack:
.../orm/lib/Doctrine/ORM/UnitOfWork.php:2816 Doctrine\Common\Proxy\AbstractProxyFactory->getProxy ()
.../Hydration/SimpleObjectHydrator.php:155 Doctrine\ORM\UnitOfWork->createEntity ()
.../Hydration/SimpleObjectHydrator.php:70 Doctrine\ORM\Internal\Hydration\SimpleObjectHydrator->hydrateRowData ()
.../Internal/Hydration/AbstractHydrator.php:202 Doctrine\ORM\Internal\Hydration\SimpleObjectHydrator->hydrateAllData ()
.../Entity/BasicEntityPersister.php:901 Doctrine\ORM\Internal\Hydration\AbstractHydrtor->hydrateAll ()
.../lib/Doctrine/ORM/EntityRepository.php:201 Doctrine\ORM\Persisters\Entity\BasicEntityPersister->loadAll ()
.../prosun/app/model/facades/DocsFacade.php:57 Doctrine\ORM\EntityRepository->findBy ()
.../presenters/DocumentPresenter.php:51 App\Model\Facades\DocsFacade->getAllByType ()
inner-code App\AdminModule\Presenters\DocumentPresenter->actionDocs ()
.../src/Application/UI/Component.php:102 ReflectionMethod->invokeArgs ()
.../src/Application/UI/Presenter.php:213 Nette\Application\UI\Component->tryCall ()
.../src/Application/Application.php:160 Nette\Application\UI\Presenter->run ()
.../src/Application/Application.php:89 Nette\Application\Application->processRequest ()
/home/x/web/project/www/index.php:10 Nette\Application\Application->run ()
A tato spojená s Ublaboo/Datagrid:
Symfony\Component\PropertyAccess\Exception\NoSuchPropertyException
xdebug_message:
'
Symfony\Component\PropertyAccess\Exception\NoSuchPropertyException: Can't get a way to read the property "id" in class "App\Model\Entities\Task". in … ex.php:10'
message: 'Can't get a way to read the property "id" in class "App\Model\Entities\Task".'
string: ''
code: 0
file: '/var/www/html/vendor/symfony/property-access/PropertyAccessor.php'
line: 459
trace: array
previous: null
Call stack
.../property-access/PropertyAccessor.php:115 Symfony\Component\PropertyAccess\PropertyAccessor->readProperty ()
.../vendor/ublaboo/datagrid/src/Row.php:265 Symfony\Component\PropertyAccess\PropertyAccessor->getValue ()
.../vendor/ublaboo/datagrid/src/Row.php:112 Ublaboo\DataGrid\Row->getDoctrineEntityProperty ()
.../vendor/ublaboo/datagrid/src/Row.php:55 Ublaboo\DataGrid\Row->getValue ()
.../vendor/ublaboo/datagrid/src/DataGrid.php:538 Ublaboo\DataGrid\Row->__construct ()
/home/costra/web/prosun/temp/cache/latte/templates-Task-grid.latte--805f237724.php:41 Ublaboo\DataGrid\DataGrid->render ()
.../latte/src/Latte/Runtime/Template.php:294 Template805f237724->blockContent ()
.../latte/src/Latte/Runtime/Template.php:349 Latte\Runtime\Template->Latte\Runtime\{closure} ()
.../latte/src/Latte/Runtime/Template.php:297 Latte\Runtime\Template->filter ()
/home/x/web/project/temp/cache/latte/AdminModule-templates-@layout.latte--b11ac28a04.php:198 Latte\Runtime\Template->renderBlock ()
.../latte/src/Latte/Runtime/Template.php:205 Templateb11ac28a04->main ()
.../latte/src/Latte/Runtime/Template.php:186 Latte\Runtime\Template->render ()
.../vendor/latte/latte/src/Latte/Engine.php:95 Latte\Runtime\Template->render ()
.../Bridges/ApplicationLatte/Template.php:46 Latte\Engine->render ()
.../Application/Responses/TextResponse.php:50 Nette\Bridges\ApplicationLatte\Template->render ()
.../src/Application/Application.php:168 Nette\Application\Responses\TextResponse->send ()
.../src/Application/Application.php:89 Nette\Application\Application->processRequest ()
/home/x/web/project/www/index.php:10 Nette\Application\Application->run ()
- pavelinnuendo
- Člen | 33
Renyl napsal(a):
Ahoj, Pavle,
měl jsem stejný problém při přechodu z Kdyby s těmi proxy třídami a pomohlo mi smazat obsah adresáře temp/proxies/, kde byly původně generované proxy třídy z Kdyby.
Hope this helps :)
Díky!!! Taková blbost! :) Tím je vyřešen ta první chyba.
Teď ještě co s tím Ublaboo/Datagridem…
Editoval pavelinnuendo (27. 1. 2021 16:24)
- Gappa
- Nette Blogger | 208
pavelinnuendo napsal(a):
Teď ještě co s tím Ublaboo/Datagridem…
Datagrid používá PropertyAccess a ten hledá v objektu getter, pak hasser/isser a až nakonec jde po public property (možná jsem něco přeskočil).
Pokud jsi v Kdyby/Doctrine používal protected properties a pak tu get/set magii (je tam i samostatná traita), tak ta tady není, tak pro ten PropertyAccessor je ta entita „nedobytná“.
Pro ID pomůže ta zmiňovaná traita z Nettrine, pro ostatní properties té entity ale už budou potřeba metody (nebo je udělat public, ale to raději ne).
Snad jsem situaci odhadl správně :)
Editoval Gappa (27. 1. 2021 20:08)