thisとは別の問題があります。シナリオは同じですが、結果のフィルタリングがさらに必要になります。結合テーブルから列を選択する方法:laravel eloquent
私を説明しましょう。
は、私は2つのテーブル
車
id
name
staff_id
distance
mileage
スタッフ
id
name
designation
を持って考えてみましょう私は両方のテーブル(モデル)からのみid
とname
を選択します。 車両モデルには、belongsTo
のスタッフモデルとの関係が含まれています。
class Vehicle extends Model
{
public function staff()
{
return $this->belongsTo('App\Staff','staff_id');
}
}
と私はそれがvehicle
テーブルをフィルタリングし、この
->get(['id','name'])
よう->get()
のフィールドを置くが、スタッフテーブルのない結果を生成しない場合、私はこの
Vehicle::where('id',1)
->with(['staff'=> function($query){
// selecting fields from staff table
$query->select(['staff.id','staff.name']);
}])
->get();
を使用して参加しました。
アイデア?
が機能しました。論理は何ですか? –
は申し訳ありません。それは問題ではありませんでした!私はそれを投稿させてください..スタッフを削除しても結果に変更はありませんでした。 –