Ich versuche, durch komplexe redegewandte Modellbeziehungen/Attribute zu gehen, und ich würde gerne eine einfache Punktstruktur verwenden, um dies zu durchlaufen, ähnlich wie Sie können Traverse Arrays mit Arr::get()
Wie traversiere ich durch Modellbeziehungen in Laravel mit Punktsyntax
Beispiel:
$data = [
'foo' => [
'bar' => [
'key' => 'value'
]
]
];
$value = Arr::get($data, 'foo.bar.key'); // returns 'value'
ich habe versucht, mit
$value = Arr::get($model, 'relation.subrelation.attribute')
jedoch dies nicht gelingt und aways gibt null zurück, auch tho Hochkarätige Modelle unterstützen ArrayAccess.
Hat Laravel eine einfache Möglichkeit, dies zu erreichen?
Da Beziehungen einer zu viele sein könnte, könnte es Ein Array von Objekten mit numerischen Indizes sein. Überprüfen Sie, ob das das Problem ist. – anwerj
@anwerjunaid dies sind reine Eins-zu-eins-Beziehungen (Kind/Eltern), aber danke für den Vorschlag –
Ändern Sie die Sammlung von der Modellabfrage zu Array? Sie sollten zuerst '-> toArray()' für die Sammlung verwenden. – Mithredate