Вход

Просмотр полной версии : kickstarter работа с таблицами


elezeo
30.09.2011, 21:19
Приветствую.
Вот решил написать расширение.
Создал в кикстартере таблицы. Но структура весьма хитрая.
Есть три таблицы, назову их так:
objects - Список обхектов
params - Список парпметров, которые могут быть присвоены объекту
values - Список значений, которые могут быть выбраны в параметре
----
Грубо говоря объект выглядит примерно так:
Объект1
--Параметр1 = Значение1_1
--Параметр2 = Значение2_1
--Параметр3 = Значение3_2

Вопрос. Какие типы полей должны быть у таблицы Обекты для связывания ее с таблицей Параметры и какой тип поля для связывания таблицы Параметры со Значениями.

Ну и конечно же вопрос. А как потом это в Бэкенде визуализировать в том же виде. Чтобы в форме можно было добавить любое кол-во параметров и соответственно в параметре выбрать значение.

dmartynenko
03.10.2011, 21:00
Прочитайте про IRRE - это как раз то что вам нужно.
- http://wiki.typo3.org/Inline_Relational_Record_Editing
- также IRRE должно быть освещено в документе doc_core_api
- покопайтесь в коде irre_tutorial.

Если кратко - позволяет в карточке записи (родительской) создавать связанные записи (дочерние) из другой таблицы. Каждая связанная запись при этом отображается как отдельная форма (как раз ее можно сделать как выпадающий список "параметр" и выпадающий список "значение").

Также стандартные возможности TCA позволяют сделать один список (или любое поле) зависимым от значения выбранного в другом списке.

Таблицы params и values нужно будет сделать отдельными справочными таблицами, причем в values будет выбираться params.uid к которому значение относится.

Итого у вас получится 4 таблички - родительская запись (objects), дочерние записи к ней (items) и 2 справочника (params + values).