Discovered reflexion v jedné tabulce

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Pilda
Člen | 52
+
0
-

Dobrý večer,
mám tabulku forum_posts, kde jsou příspěvky z fóra a v ní je sloupec jménem reaction, do kterého se zapisuje id příspěvku, na který ten daný post reaguje. U toho sloupce reaction je nastavený teda cizí klíč, co vede do té samé tabulky na ID.

Ještě v noční verzi nette 2 mi fungoval tento kód.

$original_post = $post->ref("forum_posts", "reaction")

Po přechodu na nette 2 final mi to přestalo fungovat. Došlo tam k nějaké změně? Jak to ošetřit?

uestla
Backer | 796
+
0
-

Nejspíšejc jde o https://forum.nette.org/…ejne-tabulky.

Jako workaround jsem zatím použil ruční

$original_post = $forum_posts->find( $post->reaction )->fetch();
hrach
Člen | 1834
+
0
-

Kod by měl fungovat, respektive nedošlo zamerně k žádné změně. Co znamená, že nefunguje? Jakou chybu to hází?

Pilda
Člen | 52
+
0
-

Díky, také jsem to tak zatím obešel. Já mám ale za to, že to Hrach skutečně opravil, protože mi to ještě ve noční betě fungovalo. Řekl bych, že je to nový bug a přestalo to fungovat, nebo je třeba něco někde donastavit.

Pilda
Člen | 52
+
0
-

hrach: píše to No reference found for $forum_posts->forum_posts

hrach
Člen | 1834
+
0
-

Yep, uz asi vim odkud vitr vaje. Nicmene si myslim, ze ten klic mas spatne definovanej (respektive vubec). Zafixuju, divne je, ze to v bete fungovalo…

Editoval hrach (6. 2. 2012 0:15)

Pilda
Člen | 52
+
0
-

Díky. to budeš moc hodný. Ten klíč by měl být snad dobře definovaný, můžeš mrknout na screen pro jistotu.

hrach
Člen | 1834
+
0
-

Vzhledem k tomu, ze mas spravne nadefinovany klic, tak „docasny“ workaround je

$post->reaction->...

Opravu pull-requestuji.

hrach
Člen | 1834
+
0
-

mergnuto, vyzkousej nightly.

Pilda
Člen | 52
+
0
-

JJ funguje to. Díky moc!