LARAVER 4同じテーブルのマルチマルチハメーリー
質問
私は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
の名前を正しいものに変更するだけです。
所属していません StackOverflow