質問

私はLaravel 4アプリケーションを持っています。このアプリケーションでは、別のモデルと2回のモデルとの関連でモデルを定義する必要があります。

class Car extends Eloquent{

     public function oldDrivers(){
        return $this->hasMany('Driver');
     }

     public function newDrivers(){
        return $this->hasMany('Driver');
     }

}
.

だから、carのテーブルのdriver IDに関係は、特定の車のみのドライバを取得したい場合があります。

それが同じテーブルであるために見つけたときに見つけられたので、私はDriverモデルでタイプを設定しました。OldDriversと新しいドライバは、NewDriver Type Set、

のみのドライバになります。

これはどのようにLaravelで行うことができますか?

役に立ちましたか?

解決

あなたはこのようなものを試すかもしれません:

class Car extends Eloquent{

     public function oldDrivers(){
        return $this->hasMany('Driver')->where('type', 'olddrivers');
     }

     public function newDrivers(){
        return $this->hasMany('Driver')->where('type', 'newdrivers');
     }

 }
.

は、データベース内のフィルタとしてtypeフィールドを持つと想定していました。typeフィールドに間違っている場合は、field句を使用してフィルタを追加する方法を得るために、whereの名前を正しいものに変更するだけです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top