을 쓸 수 있습니다 쓰기 특정 제약 조건을 충족하면 whereHas
방법
을 사용하십시오. 이미 쿼리 모델에서 원하는 경우
UserModel::whereHas('attachments', function ($attachmentQuery) {
$attachmentQuery->where('level', 'profile_level');
})->get();
특정 첨부 파일은 다음
$userModel->attachments()->where('level', 'profile_level')->get();
단일 쿼리에 UserModel 및 AttachementModel 모두를 조회하는 것은 불가능, 그것은 적어도 두 개의 쿼리해야합니다 쓰기 얻을. 모든 첨부 파일이있는 사용자를 반환하는 멋진 UserModel::with('attachments')->get();
조차 내부적으로 두 개의 쿼리를 수행합니다.
편집 : 나는 정의 할 수있는 것으로 나타났습니다
relation constraints 그래서 당신은 사용자 whos는 첨부 파일을 첨부 한 후 당신이 할 수있는 특정 제약과 열망 부하를 충족 찾을하려는 경우
UserModel::with(['attachments' => function ($attachmentQuery) {
$attachmentQuery->where('level', 'profile_level');
}])->get();
방법 with
내
$queryAttachments = function ($attachmentQuery) {
$attachmentQuery->where('level', 'profile_level');
};
UserModel::whereHas('attachments', $queryAttachments)
->with(['attachments' => $queryAttachments])->get();
확인하지만이 경우 사용자를 먼저 받아야합니다. 같은 쿼리를 만들고 싶습니다 : Profile :: with ('attachment'). 관련된 데이터가 있지만 관련 데이터가있는 오브젝트 프로파일을 얻고 싶지만 레벨 = user_level 인 경우 –