Связать два типа материала и редактировать разом

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

Аватар пользователя vic vic 21 марта 2011 в 13:09

Доброго всем дня!

Стоит задача реализовать форму добавления кулинарного рецепта. Каждый рецепт может состоять из неограниченного числа шагов, каждый шаг состоит из описания и фото.
Т.е. мы имеем два типа материалов - РЕЦЕПТ и ШАГ.

Можно ли сделать так, чтобы рецепт с необходимым числом шагов доавляля в одной форме. Т.е. форма должна быть динамической, с кнопной "Добавить шаг" - при этом добавляются поля для нового шага.
Есть ли готовые решения для реализации подобного?
Если нет, то возможно ли сделать, с какими проблеммами можно столкнуться?

Я пишу на d7, но подойдут и решения для d6 (буду код разбирать).

Комментарии

Аватар пользователя vic vic 21 марта 2011 в 19:59

Для drupal7 для решения поставленной задачи нужно использовать Entity API.
В частности, вот нашел подходящий модуль http://drupal.org/project/field_collection
Он позволяет создать групповое поле.
Решение вполне подходит, но вот добавлять поля нужно каждое в отдельности. Разработчики обещают доработать модуль, но вот когда...

Если кто еще знает подходящие решения - пишите!

Аватар пользователя anikinjura anikinjura 15 сентября 2011 в 22:49

vic wrote:
Для drupal7 для решения поставленной задачи нужно использовать Entity API.
В частности, вот нашел подходящий модуль http://drupal.org/project/field_collection
Он позволяет создать групповое поле.
Решение вполне подходит, но вот добавлять поля нужно каждое в отдельности. Разработчики обещают доработать модуль, но вот когда...

Если кто еще знает подходящие решения - пишите!


Сегодня посмотрел этот модуль - вроде всё работает!

Аватар пользователя Gedler Gedler 26 марта 2011 в 14:04

Для задачи подобной Вашей, данный модуль не подходит, по той причине, что поля добавляются последовательно и редактируются отдельно.
Очевидные недостатки:
1. групировки нельзя отсортировать (поменять местами) и если Вы забыли добавить какой то
из шагов сразу, то прийдется удалять предидущие и добавлять все заново (как вариант оставлять пустые группы для страховки).
2. на редактирование материала уходит больше времени.

Аватар пользователя vic vic 27 марта 2011 в 9:55

"Gedler" wrote:

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

Аватар пользователя anikinjura anikinjura 15 сентября 2011 в 16:42

vic wrote:
"Gedler" wrote:

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

Как Ваши успехи по написанию поля? Не поделитесь опытом?

Аватар пользователя pushkinma pushkinma 30 марта 2011 в 19:03

почему то Field Collection в поле Widget имеет только пункт Скрыт(Hidden) и в результате ничего не показывается. Гугление и Яндексование не дало ровным счётом ничего, как будто ни у кого такой проблемы даже не возникало. Не подскажете, в чём дело и что делать?

Аватар пользователя Gedler Gedler 31 марта 2011 в 8:52

Еще один камень в огород field collection - абсолютно невозможно применять модуль клонирования, т.к. поля field collection не клонируются.

Аватар пользователя Luna Luna 4 апреля 2011 в 1:04

У меня тоже кулинарный сайт на 7 (будет в перспективе). А как вы реализовали ингредиенты в рецепте?
Продукт и его количество. Я вот собиралась использовать составное поле, где 1 - ссылка на имеющиеся продукты и 2- количество. Хотела использовать Field Collection, но что-то не выходит пока.. Как у вас?

Аватар пользователя vic vic 4 апреля 2011 в 7:19

"Luna" wrote:

Ингредиенты у меня - это просто текстовая область, я не использую отдельный список.
Ну если бы делалл - то да, составное поле ссылка на другой материал и количество (или ссылка на термин таксономии)

Аватар пользователя vic vic 15 сентября 2011 в 18:44

"Crea" wrote:
Как Ваши успехи по написанию поля? Не поделитесь опытом?

Да написал, работает. Но без хаков не обошлось.

Аватар пользователя anikinjura anikinjura 15 сентября 2011 в 19:18

vic wrote:
Да написал, работает. Но без хаков не обошлось.

Здорово! А можете выложить? Я столкнулся с аналогичной проблемой, но опыта в написании модулей у меня нет - былобы интересно поизучать процесс создания модуля на Вашем примере.

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

"anikinjura" wrote:
Сегодня посмотрел этот модуль - вроде всё работает!

Он и раньше работал, только грпповые поля надо было добавлять по отдельности.

В приложении мой модуль. При установке модуля появится новый тип поля imagetext, дальше все понятно.

Аватар пользователя anikinjura anikinjura 16 сентября 2011 в 22:35

vic wrote:
В приложении мой модуль. При установке модуля появится новый тип поля imagetext, дальше все понятно.

Спасибо!

Аватар пользователя kodolka kodolka 9 августа 2013 в 17:43

"anikinjura" wrote:
Он позволяет создать групповое поле.

Подскажите точнее как настроить мультигруппу из трех полей.