1
나는 images_tags 테이블오류가 5
$tags = [1, 2, 3];
$items = ImagesTable::with(['images_tags' => function ($query) use ($tags) {
$tags = $query->select('image_id', ImageTag::raw('count(tag_id) as total'))
->whereIn('tag_id', $tags)
->groupBy('image_id')
->having(['total', 3])
->get();
return $tags;
}])->get();
그리고 두 개의 테이블과 이미지의 관계에서 모든 이미지를 얻을 복잡한 쿼리 빌더를
(images)-(images_tags) 1-n
images (
id int
title varchar(255)
)
images_tags (
id int
image_id,
tag_id int
constraints fk foreign key('image_id') on images('id')
)
하지만 Grammar.php 라인 (58)의 오류
ErrorException 수 :
하여 strtolower()는 매개 변수 1 문자열이 될 것으로 기대하고, 객체는
주어진 그리고 난이 라인 코드 원인 오류를 발견
ImageTag::raw('count(tag_id) as total')
그리고 왜 그런지 모르겠습니다.
ImageTag 대신 \ DB를 사용해 볼 수 있습니까? 또는 \ ImageTag와 같이 ImageTag 앞에 \를 사용하십시오. 이 \ ImageTag :: raw ('count (tag_id) as total') OR \ DB :: raw ('count (tag_id) as total')로 보자. – manian
네. 당신은 사실입니다, @manian! 고마워요. –
그것이 효과가있어 기쁩니다. 해피 코딩 :) – manian