ฉันคิดว่านี่เป็นงานง่าย แต่ดูเหมือนจะไม่มีวิธี Drupal สำหรับสิ่งนี้ ฉันมาถึงเท่าที่รู้ว่าฉันต้องใช้EntityFieldQuery
สิ่งนี้เพราะ API บอกว่าเงื่อนไขสำหรับuser_load_multiple()
เลิกใช้แล้ว
ดังนั้นฉันจึงลองทำสิ่งนี้:
$query = new EntityFieldQuery;
$query
->entityCondition('entity_type', 'user')
->propertyCondition('rid',array(1,2,3);
$result = $query->execute();
แต่ฉันได้รับสิ่งนี้:
PDOException: SQLSTATE [42S22]: ไม่พบคอลัมน์: 1054 คอลัมน์ที่ไม่รู้จัก 'users.rid' ใน 'where clause': SELECT users.uid AS entity_id,: entity_type AS เอนทิตีตี้, NULL AS revision_id,: บันเดิล AS บันเดิลจากผู้ใช้ {ผู้ใช้} WHERE (users.rid =: db_condition_placeholder_0); Array ([: db_condition_placeholder_0] => 3 [: entity_type] => ผู้ใช้ [: บันเดิล] => ผู้ใช้) ใน EntityFieldQuery-> execute ()
ดังนั้นความคิดแรกของฉันคือฉันต้องเข้าร่วมกับusers_roles
-Table และต่อไป แต่นั่นจะนำไปสู่การซ้ำซ้อน
ใครบ้างมีความคิดจะทำอย่างไร
->propertyCondition('rid', array(1, 2, 3))
;