私はlaravelの雄弁で内部結合クエリレコードを取得するために2つのテーブルを持っていますが、結合データは処理されません。Laravel Eloquent結合の使用:
表:カテゴリ
- ID
- 名
- cat_status
表:画像
- ID
- タイトル
- DESC
- img_status
画像コントローラ、私は唯一のカテゴリがアクティブであるかを取得する必要があるだけ
public function getActiveCategory() {
return $this->getCategory()->where('cat_status','=', 1);
}
アクティブ
//get all active images
ImageModel::where('status',true)->get();
public function getCategory() {
return $this->belongsTo('\App\Api\CategoryModel','cat_id');
のgetカテゴリ、その画像のみ。
if cat 1,2,3 3(is inactive)
image table
title=a1,cat_id=1,
title=a2,cat_id=2,
title=a3,cat_id=3
cat_id 3がアクティブではないため、3枚の画像がすべて取得できます。最初は2枚必要です。 どのように私は状態条件に参加することができますアイデア。
ありがとうございます。
あなたのメソッドに属しているのは、コントローラではないモデルです。 –
申し訳ありません。コントローラの部分に間違って貼り付けました。状態に属するのはモデルです。 – shashik493
eager loadingオプションを使用して取得できます。それはかなり明確な文書です –