저는 House
모델과 energy_class
모델을 가지고 있습니다.Laravel Eloquent Relationship 정의되지 않은 속성
집에는 에너지 등급이 하나뿐입니다. 에너지 등급은 여러 주택에 배정 될 수 있습니다. 그래서 저는 이런 관계 정의 :
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);
그리고 이것을 다음과 같이 참조하십시오 :
0 이런 식으로 일을 할 때Undefined property: Illuminate\Database\Eloquent\Relations\HasOne::$name
:
$house->energy_class()->name
나는이 오류가 $house->energy_class->name
내가 trying to get property of non-object
이
데이터베이스의 테이블 이름과 열 이름을 표시 할 수 있습니까? –
테이블 :'house','energy_classes'. 컬럼 :'house.energy_class','energy_classes.name' – Scarwolf