我有一個模型House
和一個模型energy_class
。Laravel雄辯的關係未定義的屬性
房子只有一個能源類。能源類可以分配給多個房屋。因此,我這樣定義的關係:
House.php
class House extends Model
{
public function energy_class()
{
return $this->hasOne('App\energy_class', 'id', 'energy_class');
}
}
energy_class.php
class energy_class extends Model
{
public function house()
{
return $this->belongsToMany('App\House');
}
}
當通過內部數據,以這樣的觀點:
$house = House::with('energy_class')->find($id);
return view('admin.houses.edit')->with('house', $house);
並在像這樣的視圖上引用它:
$house->energy_class()->name
我得到這個錯誤:Undefined property: Illuminate\Database\Eloquent\Relations\HasOne::$name
在做這樣的:$house->energy_class->name
我得到trying to get property of non-object
您可以顯示數據庫的表名稱和列名稱嗎? –
桌子:'房子','energy_classes'。列:'house.energy_class','energy_classes.name' – Scarwolf