Построение каталога с помощью Taxonomy, Hierarchical и множественных родителей

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

Аватар пользователя Tinnka Tinnka 10 декабря 2010 в 3:33

Дорогие Друпаловцы, помогите новичку, пожалуйста...

Есть база данных АКПП, содержащая в себе данные о производителе, модели автомобиля, кол-ве ступеней в АКПП, периоде выпуска и собственно ссылки на pdf файл;

Задача состоит из 2-х частей
1 часть задачи:
Нужно иметь возможность заполнять БД АКПП последовательно для каждой АКПП выбирая из списков 1. Производителя, 2. Модель автомобиля, 3. Количество ступеней передач в АКПП, 4. Период выпуска АКПП и наконец 5. Прикреплять pdf файл;

2 часть задачи:
Нужно дать пользователям возможность заполнить те-же фильтры (причем необязательно все, а только те которые они знают, к примеру выбрать производителя, кол-во ступеней и год выпуска (не период а именно год)) после чего, нажать что то типа "Выполнить" после чего пользователю должна быть представлена табличка с результатами соответствующими заданному фильтру;

Пример исходных данных:

Производитель Модель автомобиля Количество ступеней Модель АКПП Год выпуска от Год выпуска до Файл
Audi 80, 90,100 3-speed VW 010, 087, 090 1985 1995 [ссылка на файл]

Пыталась реализовать данную структуру с помощью терминов таксономии с помощью множественных родителей, но после того как я дошла до 4го уровня вложенности (Пример: родителями модели АКПП "VW 010" являются термины «Audi›100›3-speed») поняла что структура получится просто гигантская, тяжелая в заполнении, управлении и более чем вероятно влияющая на производительность и скорость работы сайта, а ведь еще нужно добавлять период дат выпуска;

Вот во что превратилась 1 строка исходных данных, а ведь я еще период дат не добавила:

Производитель Модель автомобиля Количество ступеней Модель АКПП
Audi 80 3-speed VW 010
Audi 90 3-speed VW 010
Audi 100 3-speed VW 010
Audi 80 3-speed VW 087
Audi 90 3-speed VW 087
Audi 100 3-speed VW 087
Audi 80 3-speed VW 090
Audi 90 3-speed VW 090
Audi 100 3-speed VW 090

У меня сложилось впечатление что в Drupal нет ничего невозможного, но.. т.к. я новичок...

Модули которые были мной использованы: Content Taxonomy, Hierarchical Select, Hierarchical Select Content Taxonomy);
Используемая версия Друпала: 6

Пожалуйста, подскажите, с той ли вообще стороны я зашла, или я зря пытаюсь построить столь громоздкую архитектуру через Таксономию и множественных родителей? Может быть данную задачу можно выполнить с помощью других модулей?

Заранее всех благодарю за помощь.

Комментарии

Аватар пользователя bsyomov bsyomov 10 декабря 2010 в 11:42

Период выпуска и кол-во передач надо делать не таксономией, а CCK полями в материале, для моделей автомобилей надо использовать мультиселект.
Т.е. у вас будет словарь производители-модели автомобилей, из которого для материала будет выбираться несколько значений. И получится как раз так, как в ваших исходных данных.

Аватар пользователя Tinnka Tinnka 10 декабря 2010 в 13:53

"bsyomov" wrote:
кол-во передач надо делать не таксономией, а CCK полями в материале

в приведенном мной примере везде используется 3-х ступенчатая коробка, но на самом деле их 9 видов, и от кол-во ступеней зависит модель АКПП

"bsyomov" wrote:
для моделей автомобилей надо использовать мультиселект

Я так понимаю, речь идет о модуле Multiselect?
Можно подробней, что конкретно имелось ввиду, спасибо

Аватар пользователя Tinnka Tinnka 10 декабря 2010 в 21:03

"<a href="mailto:shamaner@drupal.org">shamaner@drupal.org</a>" wrote:

категории для таких вещей это зло
структуру надо переделывать

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

Аватар пользователя bsyomov bsyomov 10 декабря 2010 в 21:04

"Tinnka" wrote:
в приведенном мной примере везде используется 3-х ступенчатая коробка, но на самом деле их 9 видов, и от кол-во ступеней зависит модель АКПП

И в чём проблема? 1 модель коробки = 1вариант кол-ва передач = 1 прикреплённый файл = 1 нода.

"Tinnka" wrote:
Я так понимаю, речь идет о модуле  Multiselect?
Можно подробней, что конкретно имелось ввиду, спасибо

Возможность прикепить более 1 термина к ноде есть у друпала из коробки. Привёдённый вами модуль это виджет, который делает такое действие более удобным, если используется список терминов, а не дерево.

Аватар пользователя Crea Crea 10 декабря 2010 в 23:48

Tinnka wrote:
"Crea" wrote:
HS не совместим с "множественными родителями"

получается при использовании множественных родителей модули Hierarchical Select, Hierarchical Select Content Taxonomy можно вообще удалять?

Нет, просто не используйте HS вместе с такими словарями.

Аватар пользователя alexandr.poddubsky alexandr.poddubsky 10 декабря 2010 в 23:34

зачем там вообще родители? делайте поля.

да и вообще у вас избыточность. смотрите 

Производитель 	   Модель автомобиля 	    Количество ступеней 	Модель АКПП
нода с референсе   нода -моделей много же    поле либо словарик            нода
                   если не нода то поле
                    либо  словарик

все. делаов на 30 минут с пывом

Аватар пользователя Tinnka Tinnka 13 декабря 2010 в 6:15

"<a href="mailto:shamaner@drupal.org">shamaner@drupal.org</a>" wrote:
да и вообще у вас избыточность

мне безумно нравится идея убрать избыточность.. но.. стыдно признаться - я абсолютно не поняла как ваш ответ применить на практике..?

еще раз прошу прощения за непонимание.. Буду очень благодарна за более развернутые объяснения с примером если вас не затруднит

Аватар пользователя UnnamedNETUA UnnamedNETUA 10 ноября 2015 в 11:47

Вы хотите все подвязать таксономией, вам предлагают на таксономии отставить только те вещи что нельзя сделать правкой полей ноды.
Нода имеет по умолчанию 2 поля, титле и боди, вы добавляете числовое поле "год от", и при создании ноды указываете год, так же поле "до года". Дальше, создаете словарь, "коробка" где создаете 9 пунктов (список), к ноде добавляете поле типа словарь, выбрав словарь "Коробка", в настройках задав "множественный выбор" и выбор галочкой, а не выпадающий список. Авто и модель делайте иерархией такстономии. Так же к ноде добавляете тип файл, где грузите файл.
В итоге у вас будет новая нода, где вы выберете год от, год до, мультиселектом выды коробки, иерерахией модель авто и прикрепите файл. Далее это выводите как вам угодно через виевс таблично.
Основано на друпал 7 (поэтому как в 6 не знаю, но делается аналогично).
снимок 4 - словари таксонамии
снимок 5 - тип содержимого с полями файл, числовое поле, словарь мультиселект
снимок 7 - добавление материала, версия файла это например год, множественный выбор вашей коробки, выбор модели и тд.

Аватар пользователя Tinnka Tinnka 16 декабря 2010 в 0:16

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