0
でモデルの関係を生成し、私は3台&モデルを持っていますか?はlaravel 5.4
でモデルの関係を生成し、私は3台&モデルを持っていますか?はlaravel 5.4
Eloquentモデルクラス内のモデル/テーブル間の関係を定義しましょう。モデルに外部キーがあることを定義するには、belongsTo
を使用して、モデルが別のモデルに属することを定義します。
// Product.php
public function category()
{
return $this->belongsTo('App\Category');
}
// Category.php
public function category()
{
return $this->belongsTo('App\ParentCategory');
}
雄弁は、データベーステーブルの<lowercase modelname>_id
という名前の列を探します。 Product
については、category_id
を意味し、Product
は、Category
に属します。
あなたの列名を変更したくない場合は、2番目の引数として外部キーを定義することができます。
return $this->belongsTo('App\Category', 'c_id');
あなたはLaravel Docs
更新#1
あなたのご質問に少し間違いがあったようですので、私はあなたの意見に基づいてこれはうまくいくはずです:
Product::with('category')
->with('category.parent_category')
->get();
Product :: with( 'category') - > get(); これは商品とカテゴリの値のみを返しますが、カテゴリと親カテゴリのデータを持つ商品が必要です。 –
回答を可能な解決策で更新しました –