Как сделать такую выборку?

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

Аватар пользователя Liolya Liolya 28 октября 2009 в 12:11

Всем привет!
Есть два вида нод : Поставщики и Производители. В каждой ноде есть поле node_reference на еще одну ноду Страны.
Нужно сделать следующее: фильтр выбор страны, например Россия и чтобы отобразились все Поставщики и Производители страны.
По сути, нужно было делать Страну не нодой а таксономией, но почему-то первоначально сделано это так.
Подскажите пожалуйста, как сделать это с помощью view. Получается сделать такое только для одной ноды, например для Поставщиков..а как сделать это для двух нод..как их связать. между собой с помощью ноды Страны.подскажите пожалуйста!!!
Заранее благодарна!

Комментарии

Аватар пользователя Nikit Nikit 28 октября 2009 в 12:40

видели такой блок в редакт-и views - relationships, вот она позволяет подключать другие (и те же) таблицы посредством отношений node reference.

Аватар пользователя Liolya Liolya 28 октября 2009 в 17:00

Да, с этим уже второй день разбираюсь, пока не получается, уже различные варианты перепробовала..можно пожалуйста по-подробнее, что должно в фильтре быть..а что должно быть в relationships. Пробовала делать так:

1) В фильтр Материал Тип= Страна
2) relationships1= node reference из ноды Поставщики
3) relationships2= node reference из ноды Производители
4) в поля =Материал.Заголовок (название поставщика или производителя)

и выборки нет. Что не так?

Аватар пользователя Nikit Nikit 29 октября 2009 в 0:50

поля должны быть из подключенных в relationship.
покажите селект, который он сформировал.  <code> ... предварительно оберните...

Аватар пользователя Liolya Liolya 29 октября 2009 в 10:12

показываю скриншоты:

1) В фильтр Материал Тип= Страна

2) relationships1 = node reference из ноды Поставщики

3) relationships2= node reference из ноды Производители

4) Далее Вы говорите, что поля должны быть из подключенных relationships, но их в выборе полей нет.
то есть они должны автоматически там появиться или как их туда добавить?
сейчас там поле Материал:Заголовок

ну и сам селект

SELECT node.nid AS nid,
   node.title AS node_title
 FROM node node
 LEFT JOIN content_type_postavzhik_kozhy node_data_field_country ON node.vid = node_data_field_country.vid
 INNER JOIN node node_node_data_field_country ON node_data_field_country.field_country_nid = node_node_data_field_country.nid
 LEFT JOIN content_type_proizvodstvo_kozhy node_data_field_pcountry ON node.vid = node_data_field_pcountry.vid
 LEFT JOIN node node_node_data_field_pcountry ON node_data_field_pcountry.field_pcountry_nid = node_node_data_field_pcountry.nid
 WHERE node.type in ('country')
Аватар пользователя Liolya Liolya 1 ноября 2009 в 19:04

Сделала ноду Страны таксономией, с relationships ничего не получилось. Две ноды связываются нормально а три никак!
Спасибо за помощь!