Ich versuche, Beziehungen über Laravel Eloquement-Modell zu erhalten. Ich habe zwei Modelle ex Books.php und Magazine.phpLaravel-Beziehung gibt NULL zurück
in Books.php ich habe
public function magazines()
{
return $this->hasMany('App\BOOKS', 'id', 'id');
}
Dann bin ich versuchen, alle Zeitschriften zurückzukehren, die mit Bücher beziehen
$books = Book::find(123);
$magazines = $books->magazines()->get();
return $magazines;
aber ich habe NULL Zeitschriften! Wenn ich hinzufügen bin
$magazines = $books->magazines()->toSql();
ich bin sehen diese wählen.. select * from "MAGAZINE" where "MAGAZINE" "ID" ist null und "MAGAZINE" "ID" ist nicht null - was ist es? Warum Laravel-Modell setzen "ist null und ist nicht null"?
Hinweis, wenn ich ändern bin
public function magazines()
{
return $this->belongsToo('App\BOOKS', 'id', 'id');
}
Select so sein würde. select * from "MAGAZINE" where "MAGAZINE" "ID" ist null Wer weiß, was ist das?
zeigen Tabellenstruktur für Bücher Tabelle –
Ich glaube nicht, Ihre Beziehung Sinn macht. Warum hat ein Buch viele Bücher? Sollte kein Buch zu vielen Zeitschriften gehören? – GiamPy
Ich kann mir vorstellen, dass die Klasse, auf die Sie in der Beziehung verweisen, nicht existiert. Versuchen Sie, die Klasse, auf die Sie sich beziehen, in der 'hasMany' von' App \ BOOKS' zu 'App \ Book' zu ändern. –