2017-02-22 2 views
0

の調査では、私は、ユーザーの調査を求めている場合は、次のクエリはユーザー

$survey = $user->surveys() 
    ->where('survey_id', $survey) 
    ->where('user_id', $user)->first(); 

与え、しばらくの間、これを不思議に思ってきた入門します。

->where('user_id', $user) 

は必要ですか? 私は既にこのユーザーのアンケートに尋ねているようです。

+0

これは、任意のアンケートIDを指定してユーザーが所属していないアンケートを検索しないようにする場合に意味がありますか? – castis

+0

あなたの関係はどのように設定されていますか? – Samsquanch

答えて

1

あなたのsurveysリレーションは、適切に設定されている場合は、既に自動的に->where('user_id', $user)をクエリに追加しているはずです。したがって、クエリのその部分を自分で追加する必要はありません。

これはあなたの関係が以下のコードのように設定されていることを前提としていますが、おそらく(私は2番目と3番目のパラメータはオプションであり、このインスタンスでは何も振る舞いは変わりません。

public function surveys() 
{ 
    return $this->hasMany(Survey::class, 'survey_id', 'id'); 
}