Hallo Kollegen,
ich habe ein verwandtes Feld names article, dessen Datensatz ich im Model mittels $this->getRelated('article') laden will. Versuche ich das, bekomme ich im Browser einen "Fehler: Verbindung unterbrochen". Das ist keine Contao- oder PHP-Fehlermeldung, sondern die kommt direkt von meinem Browser.
Im PHP-Error-Log sehe ich lediglich einen Segmentation Fault:
Code:
child pid 3168 exit signal Segmentation fault (11)
Wenn ich den verwandten Record per Hand via MyextArticleModel::findByPk($row['article']) lade. funktioniert es. Ich möchte allerdings wissen, warum getRelated() nicht funktioniert. Per Debugging konnte ich das Problem bis Zeile 373 in der Contao\Model.php zurückverfolgen. Dort steht:
Code:
$objModel = $strClass::findOneBy($arrRelation['field'], $this->$strKey, $arrOptions);
Allerdings wird die findOneBy nie aufgerufen. Irgendwo dazwischen (da gibt’s ja eigentlich nix mehr) knallt es. $strClass, $arrRelation['field'] und $this->$strKey sind korrekt gesetzt.
Meine Vermutung ist irgendeine Rekursion oder ähnliches. Bin aber jetzt am Ende meines Lateins.
Kann mir jemand weiterhelfen? Zum Schluss noch mein DCA:
Code:
'article' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_myext_order']['article'],
'exclude' => true,
'inputType' => 'select',
'foreignKey' => 'tl_myext_article.label',
'eval' => array('mandatory'=>true, 'chosen'=>true, 'tl_class'=>'w50'),
'sql' => "int(10) unsigned NOT NULL default '0'",
'relation' => array('type'=>'hasOne', 'load'=>'lazy')
),
Bin für jeden Hinweis dankbar.
Viele Grüße
meister
Lesezeichen