ในการใช้งานของฉันฉันมีเอนทิตีที่มีสองฟิลด์ที่อ้างอิงถึงคำศัพท์เฉพาะ
ข่าว: - แท็ก (การอ้างอิงเอนทิตี) - หมวดหมู่ (การอ้างอิงเอนทิตี)
ถ้าฉันค้นหาจากการอ้างอิงเหล่านั้นฉันได้รับผลลัพธ์อย่างไรก็ตามเมื่อฉันสอบถามทั้งสองตัว (และตัวกรอง AND) ฉันจะไม่ได้ผลลัพธ์ ฉันได้ตรวจสอบสามครั้งภายในตอนนี้และมีเอนทิตีที่มีทั้งแท็กและหมวดหมู่ที่ฉันสอบถาม
นี่เป็นข้อผิดพลาดของผู้ใช้หรือข้อผิดพลาด Drupal หรือไม่
$query = \Drupal::entityQuery('node')
->condition('status', 1)
->condition('type', 'news')
;
$group = $query->andConditionGroup()
->condition('field_tag.entity.name', ['cars'], 'IN')
->condition('field_category.entity.name', ['sport'], 'IN')
;
$query->condition($group);
$nids = $query->execute();
แก้ไข: ฉันได้พบการแก้ไขโดยการสอบถามเกี่ยวกับมูลค่าดิบแทนเอนทิตีมูลค่า นี่เป็นสถานการณ์ที่ไม่พึงประสงค์
$query = \Drupal::entityQuery('node')
->condition('status', 1)
->condition('type', 'news')
;
$group = $query->andConditionGroup()
->condition('field_tag.entity.name', ['cars'], 'IN')
->condition('field_category', [1], 'IN')
;
$query->condition($group);
$nids = $query->execute();