Views, вывод тизеров полями, Дублируются тизеры, если добавлено поле "Таксономия термин"

Главные вкладки

Аватар пользователя Valeratal Valeratal 15 мая 2010 в 16:54

Собственно сабж

вывожу полями тизеры

Все бы хорошо, но есть такое поле
Таксономия: термин

Так вот, если терминов у ноды не один, то ее тизер выводится несколько раз (по количеству терминов)

Вопрос, как это побороть?

P.S. Полями вывожу чтобы уменьшить нагрузку (не грузить node_load)

Комментарии

Аватар пользователя Xermit Xermit 15 мая 2010 в 20:31

на будущее, мало ли, в views есть возможность убрать повторяющиеся ноды при выводе, свойство distinct называется.

Аватар пользователя seaji seaji 16 мая 2010 в 0:47

Следует иметь ввиду, что distinct НЕ УБИРАЕТ повторяющиеся ноды.
distinct убирает повторяющиеся ряды.
Это огромная разница.

Скажем одна нода имеет два термина, термин-1 и термин-2
Если выборка происходит по рядам, то distinct не помошник, т.к. первый ряд будет:
nid, термин-1
а воторой ряд будет
nid, термин-2
как видите ряды не повторяются.

Аватар пользователя Valeratal Valeratal 16 мая 2010 в 10:52

к тому же distinct штука ресурсноемкая
а моя цель был как раз снизить нагрузку
а то бы выводил обычные тизеры и не парился

Аватар пользователя Xermit Xermit 16 мая 2010 в 13:00

Насчет ресурсоемкости, надо смотреть по каким полям DISTINCT в sql запросе делается, и индексированы ли они, есть ли составной ключ, любая операция по не индексируемому полю, ключу в запросе ресурсоемкая

http://sqlinfo.ru/forum/viewtopic.php?id=474

правда втыкать индексы везде и всюду тоже неправильно Smile

кстати все что-то никак не могу получить sql от view раньше помнится он где-то отображался а сейчас что-то не видно его. Или я при включенном devel модуле может запрос раньше видел Biggrin

Аватар пользователя the_gaintsev the_gaintsev 15 октября 2010 в 21:19

Тем же вопросом озаботился. Перерыл все настройки полей таксономии и именно в all terms не полез, думая что там то уж точно не будет. )))