2017-12-20 3 views
2

Ich habe zwei Tabellen Abteilungen und natürlich, und ich habe eine Beziehung zwischen ihnen definiert, aber ich erhielt diese Fehlermeldung:Call to undefined Beziehung in Laravel

Call to undefined Beziehung in Laravel

Kann mir bitte jemand sagen wo ist das Problem?

Modell-Code:

public function course() 
{ 
    return $this->hasMany('App\Course','departments_id','id'); 
} 

Modell Abteilung:

public function department() 
{ 
    return $this->belongsTo('App\Departments','departments_id'); 
} 
+1

Und wo bekommen Sie dieses Problem? Was genau sagt der Fehler? Welche Version von Laravel benutzt du? –

+0

Aufruf zu undefinierten Beziehung [Abteilungen] auf Modell [App \ Course]. Laravel 5.4 – KaziBablu

+2

So wie Sie sehen, erhalten Sie Fehler für 'Abteilungen' und Sie haben keine solche Beziehung - Sie haben' Abteilung' Beziehung. Also Sie "Abteilung" anstelle von "Abteilungen" und Sie werden diesen Fehler nicht haben –

Antwort

1

So Problem ist so klar. Entweder müssen Sie in Ihrem Kursmodell die Funktion department in departments umbenennen oder eine neue mit dem korrekten Namen erstellen.

+1

Ich habe dies bereits im Kommentar geschrieben –

1

Vor allem kleine Korrektur in Schema $table->integer('department_id'); sollte $table->unsignedInteger('department_id');

sein Und das Problem ist - in der Migration Spaltenname ist department_id aber in Ihrer Beziehung haben Sie departments_id geschrieben gibt es eine zusätzliche S!

korrigieren Sie einfach den Spaltennamen aus dem Modell.

Verwandte Themen