Drupal-новости

Добавлен именованый тег для запросов views

Одной из приятных особенностей DBTNG в новом слое базы данных Drupal 7 является хук hook_query_alter() (Query alteration), который предназначен для внесения изменений в структурированные запросы db_select(). Теперь запросы создаваемые модулем Views момечаются помимо тега 'views' еще и тегом 'views_' . $this->view->name.
 
 
07.06.2011 — 05:20

Комментарии (15)

Аватар пользователя Dan
07.06.2011 — 05:23
7
 
 

Покажу на пальцах (для тех, кто не любит смотреть в документацию), что теперь можно альтерить запросы views примерно так (см. доки):

function hook_query_alter(QueryAlterableInterface $query) {
  if ($query->hasTag('views')) { // или $query->hasTag('views_my_views_name')
    $query->range(0, 2);
  }
}

Аватар пользователя PVasili
07.06.2011 — 08:30
-3
 
 

Лучше бы qviews продолжили развивать, не пришлось бы альтерить вообще…

Аватар пользователя abarmot
07.06.2011 — 09:38
0
 
 

Views — инструмент, используемый на сотнях тысяч сайтов. Правильно делают, что улучшают его, потому что он будет вечно жить, как Ленин :). А вы предлагаете направлять усилия на еще одну поделку, которая за полтора года никуда не продвинулась. Зачем нам кучи недоделанных, неподдерживаемых модулей?

Аватар пользователя PVasili
07.06.2011 — 10:35
0
 
 

Выражения про поделку как то неуместны (попахивает вашим дилетантизмом). Для начала, посмотрите и сравните принципиальную разницу…
QViews не нужен сотням тысяч хомячков. Но в некоторых случаях его трудно заменить.
А что автор забросил хорошую идею — жалко :(.
Хотя, чуть больше года назад обещал, что исправит ошибки (в основном они касались проблем с потенциальной уязвимостью) когда свободное время.

Аватар пользователя abarmot
07.06.2011 — 13:33
0
 
 

QViews не нужен сотням тысяч хомячков. Но в некоторых случаях его трудно заменить.

В том то и дело, что с хуками, замену views искать не прийдется. Модуль не востребован. Поэтому его и забросили.

Аватар пользователя PVasili
07.06.2011 — 14:06
-2
 
 

Тут не вопрос в замене.
Иногда нужно сделать свой запрос, который Views не сделает по определению.
И придется Views ставить только в нагрузку, чтобы потом весь его запрос хучить :(

Аватар пользователя Dan
07.06.2011 — 15:08
0
 
 

Альтерить запросы views можно было и в 6-ке. В 7-ом друпале альтер запросов в ядре, просто добавили тэг конкретно для views. Сейчас тэгов не много, думаю для крупных и апишных модулей типа OG, *_access, voteapi и т.д. в ближайшее время начнут потихоньку добавлять тэги.

Про qviews. Да, хорошо бы чтобы модуль был, но походу автор обиделся на всех, а тянуть концепт мало кому хочется.

Аватар пользователя PVasili
07.06.2011 — 15:48
-1
 
 

Про qviews. Да, хорошо бы чтобы модуль был, но походу автор обиделся на всех, а тянуть концепт мало кому хочется.

Да нет, не обиделся. Там были какие-то проблемы с безопасностью и что-то не совсем в drupal way стиле. Я пару раз автору писал, он обещал заняться, когда время будет. Даже $ не брал (я предлагал).
Может флешмобнем и предложим помощь? Задумка то отличная была. Не для всех модуль, но часто с ним довольно просто можно решить сложные вещи, только зная SQL.

Аватар пользователя Mirocow
07.06.2011 — 20:14
-2
 
 

Давно смотрю на этот модуль и скорее всего буду говорить о co-maintainer с разработчиком

Аватар пользователя Anonym
09.06.2011 — 08:30
0
 
 

Тегом 'views_' . $this->view->name пока не помечаются. Для этого нужен патч. А без этого тэга функционал малопригоден.
Автор поста даже не удосужился скопировать ссылку на issue с патчем.

Аватар пользователя Dan
09.06.2011 — 08:39
-1
 
 

Автор добавил ссылку, которая ведёт в блог Андрея Постникова, где есть и issue и другие полезные ссылки.

Аватар пользователя Anonym
09.06.2011 — 08:49
1
 
 

Последние 2 слова: commit & issue. В оригинале это ссылки, у вас это просто 2 бессмысленных слова.

Аватар пользователя Dan
09.06.2011 — 08:59
0
 
 

Проглядел. Списибо, исправлено.

Аватар пользователя andypost
10.06.2011 — 00:14
-1
 
 

К сожалению в публикации ссылок описание выводится plain text, посему нет ссылок и пояснений

Аватар пользователя andypost
10.06.2011 — 00:12
-1
 
 

Забыл сообщить еще об одном нововведении views 7