2017-06-21 4 views
0

は私が3つのモデル、顧客、サービスおよびServiceElement他のテーブルのLaravelスコープメソッドチェック?

モデルカスタマーマイスコープがあります。

public function scopeServicesExternal($query, $customer_id, $service_id){ 
     return $query->where('customer_id', $customer_id)->where('service_id', $service_id); 
} 

このスコープは私のサービスのためのすべての結果が得られるが、これはokです。 ServiceElementモデルでフィールドエージェントが空でない要素だけを取得するように拡張することは可能ですか?サーバがサービス要素に定義された関係を持っている場合

答えて

0

、あなたが行うことができます。

->whereHas('serviceElement', function($query) { 
    return $query->where('field_agent', '!=', ''); 
}); 

はどの field_agent列が空でない場合 serviceElementのレコードを持っているだけのモデルを返します。

serviceElementを置き換えますが、モデルファイルにリレーションシップを定義してください。

0

Eloquentリレーションシップを使用する場合は、引数としてcustomer_idとservice_idを渡す必要はありません。

関連する問題