は私のクエリ雄弁関係の明確化
$user = User::with(['session' => function ($query) {
$query->select('id','device_id');
$query->where('api_token', '=', '123456');
}])->get();
セッションです。
私は、セッションがapi_token = 123456であると予想しています。代わりに、ここで全ユーザを取得しています。私は何か間違っていることを知っています。
私はこれを参照していますdoc。このドキュメントでは、クエリに制約を追加できると言っています。しかし、ここでは$query->where('api_token', '=', '123456');
これは動作しません。
しかし、どのようにセッションの詳細を取得できますか?私はこの$ q-> select(['id'、 'device_id'])を試しました。セッションの詳細を取得しない –
'whereHas'はレコードを取得するためのものではなく、関係の存在に基づいてフィルタリングするためのものです...' with' eagerがロードされると、関係に使用されるキーを選択する必要があります...もし、それは彼らの親に戻ってレコードを一致させることはできません – lagbox