Доброго всем дня!
Прочитал много доков, книг, но что то не нашел сложных примеров запросов к БД.
В друпал 7 новые возможности работы с БД и Field API.
Хотелось бы увидеть примеры подобных запросов:
1) Получение материалов определенного типа с одним определенным полем
2) Получение материалов определенного типа со всеми доступными полями
...
Примеров может быть много.
Пробовал писать - получается, но запросы получаются громоздкими.
Мне кажется что должны быть функции, которые позволили бы легко формировать вышеуказанные запросы.
Вот только примеров я найти не смог.
Комментарии
http://api.drupal.org/api/drupal/includes--entity.inc/class/EntityFieldQ...
http://xandeadx.ru/blog/drupal/259
Почитал, что производительность запросов с использованием EntityFieldQuery в 7 раз хуже.
Что то это удручает
и часто вам приходится загружать по 1000 сущностей за раз?)
Извините.
А двойных кавычки в 7 раз медленнее чем одинарные.
Извините
тоже верно!
Ладно, да поможет нам кеширование!
извиняю
Вот типичный сцанарий построения запроса
$result = $query
->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'recipe')
->propertyCondition('status', 1)
->propertyCondition('uid', $account->uid)
->execute();
//print_r($result);
if (!empty($result['node'])) {
$nodes = entity_load('node', array_keys($result['node']));
foreach ($nodes as $node) {
$node->status = 1;
node_save($node);
}
}
А обязательно дополнительно загружать каждую ноду entity_load ?
Разве нельзя, чтобы в $result получить нужные мне поля?
нельзя