このエラーを修正する方法は、3つのテーブルのプロファイル、能力とcompetences_profilがあります。 私は各プロファイルの能力を回復したい、私はクエリビルダーと雄弁と能力を持つプロファイルを取得することができます。しかし、私は、各プロフィールの能力を盗んしたいとき、私は次のエラーを取得:未定義のプロパティ:$はstdClassを::
controller :
$competences = \App\Competence::All();
$profils = \DB::table('profils')
->select(['profils.*']);
if($request->has('varcate')){
$profils->join('fonctions','profils.fonctions_id','=','fonctions.id');
$profils->join('categos','fonctions.categos_id','=','categos.id');
$profils->where('categos.id','=',$request->input('varcate'));
}
if($request->has('varfonction')){
if(!$request->has('varcate')){
$profils->join('fonctions','profils.fonctions_id','=','fonctions.id');
}
$profils->where('fonctions.id','=',$request->input('varfonction'));
}
if($request->has('varstate')){
$profils->join('citys','profils.citys_id','=','citys.id');
$profils->join('states','citys.state_id','=','states.id');
$profils->where('states.id','=',$request->input('varstate'));
}
if($request->has('varcity')){
if(!$request->has('varstate')){
$profils->join('citys','profils.citys_id','=','citys.id');
}
$profils->where('citys.id','=',$request->input('varcity'));
}
$profils = $profils->paginate(30);
モデル: 能力 パブリック関数profils() { リターンます$ this-> belongsToMany ( 'App \ Profils'); }
profils
public function competences()
{
return $this->belongsToMany('App\Competence');
}
view :
@foreach($profils as $profil)
@foreach($profil->competences as $competence)
{{$competence->titre}}
@endforeach
@endforeach
私はモデルの内側に機能しませんか!? 例を挙げてください。 – nabil
モデル内のあなたの関数は大丈夫です。コントローラー内のリレーションシップを取得する必要があります '$ competences = \ App \ Competence :: with( 'competences') - > all();' – cssBlaster21895
エラーが発生しました:未定義メソッドを呼び出す\ Database \ Query \ Builder :: all – nabil