私のデータベースデザインは、次の図のようになります。Laravel 5.2で多形関係を通して孫を検索するにはどうすればよいですか?
コースは モジュールは、SCORMと他の2つのテーブル(この例では使用されません) SCORMモーフ1つのモジュールにモーフィングし、多くのScoes を持っている私は私のコースモデルからのアクセスに使用して関連するすべてのscoesをしようとしている多くのモジュールを持っています:
$course->scoes.
私はこれが不可能である知っている雄弁な関係を使用して、Laravel 5.2を使用しています。いくつかのテストの後、クエリビルダを使用して実際に正しいデータを返すことができますが、Scorm、Scoの代わりにModule :: classのインスタンスとして戻ってきます。
これは私が今使っているコードです。
おかげで、
public function modules() {
return $this->hasMany(Module::class);
}
public function scorms(){
return $this->modules()->where('moduleable_type','=','scorms');
}
public function scoes(){
return $this->scorms()->select('scoes.*')
->join('scoes','modules.moduleable_id','=','scoes.scorm_id');
}
回答ありがとうございました。私はその多型の関係を持っていない場合、これは合うだろう。 :) –