->ref a fatalní error 500
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- johnygemityg
- Člen | 30
Ahoj, máme problém, že při použití metody ref(). Čas od času dostanem error 500 a to úplný error 500 né ten od nette. Opraví to smazaní cache, ale problém se opakuje.
Díky za nápady.
- johnygemityg
- Člen | 30
Bohužel mi hosting takovou kontrolu neumožňuje. Nemá někdo jiný nápad či zkušenost ?
Editoval johnygemityg (8. 3. 2014 14:55)
- johnygemityg
- Člen | 30
Přináším další info.
{dump $event->ref('subject')}
array (1)
"$event->ref('subject')" => Nette\Database\Table\ActiveRow #4f44
table private => Nette\Database\Table\Selection #de0d
data private => array (3)
id => 11
short => "OBD" (3)
teacher_id => NULL
dataRefreshed private => FALSE
isModified private => FALSE
To co je v data, je dostupné bez problému, bohužel tam i něco
chybí.
Pokud však
{foreach $event->ref('subject') as $val}{$val}{/foreach}
Tak se vypíše vše ok.
Nějaká idea ?
Dočasně jsem to vyřešil:
{foreach $event->ref('subject') as $key => $val}{if $key == "name"}{$val}{/if}{/foreach}
Ale to je dost kostrbaté…
Editoval johnygemityg (11. 3. 2014 15:23)
- ondrejsotek
- Člen | 7
Mě to dělá taky, vyřešil jsem to přesunutím ref() z latte značky do proměnné v render metodě a přestalo to.
Původní kód v latte šabloně který vyhazoval segfault:
{$orderh->ref('payments','payid')->descr}
Upravený kód – render():
$template->payments = $this->orderh->ref('payments','payid');
Latte šablona:
{$payments->descr}