Qu'est-ce que je fais mal. Je ne peux pas semble de tirer sur la base de champs de type contenu dansDrupal 7 tirez les champs de type de contenu avec db api
drupal 7.function ycs_list($number) {
$query = db_select('field_data_field_active_image', 'a')
->fields('a', array('field_active_image_value', 'entity_id'))
->condition('a.field_active_image_value', 1);
$query->join('node', 'n', 'n.nid = a.entity_id');
$query
->fields('n', array('nid', 'title', 'uid'))
->range(0, $number)
->addTag('node_access')
->execute();
print $query;
return $query;
}
Voici comment les impressions de la requête:
SELECT a.field_active_image_value AS field_active_image_value, a.entity_id AS entity_id, n.nid AS nid, n.title AS title, n.uid AS uid FROM {field_data_field_active_image} a INNER JOIN {node} n ON n.nid = a.entity_id WHERE (a.field_active_image_value = :db_condition_placeholder_0) LIMIT 3 OFFSET 0
Cela semble bon et fonctionne directement dans une base MySQL. Je dois changer: db_conditon_placehoder_0 à 1 et cela fonctionne en faisant une requête sql directe. Je veux tirer un tableau de noeuds basés sur une condition dans le champ image_active. Toute aide serait très appréciée.