FieldDescription::FIELD_TYPE_MULTI

3 views
Skip to first unread message

mn

unread,
Aug 26, 2011, 5:52:11 PM8/26/11
to Energine content management framework
Доброе время суток уважаемые Разработчики.

Пишу один проект под на версии системы 2.3.8, попался тип поля без
которого было бы очень долго делать функциональность это
FieldDescription::FIELD_TYPE_MULTI. Но к сожалению как сохранять это
поле в базу я так не нашел внутри исходников. Хотелось чегото попроще,
чтобы не надо было заморачиваться с кучей дополнительных таблиц.

Решил написать свое решение по сохранению данных:

Значения выгружал с отдельной таблицы используя
Field::loadAvailableValues.
Данные решил хранить в виде VAR_CHAR(255), в формате ".
1.2.3.4.5.6.7.8.0" (цифры первичные ключи). Максимальное количество
одновременно выбранных вариантов около 30, поля должно хватать.
Подстроил метод saveData и loadData, а также класс Builder и все
заработало как мне хотелось.

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

С уважением, Виталий.

Pavel Dubenko

unread,
Aug 30, 2011, 6:32:43 AM8/30/11
to ener...@googlegroups.com
2011/8/27 mn <vitaly.y...@gmail.com>:

Здравствуйте Виталий

Тип поля MULTI предназначается для работы с множественным набором значений
и визуализируется по умолчанию как набор радиобатонов
Действительно в 2.3.8 он использовался только в случаях когда
разработчик сам заполнял набор значений
то есть автоматической привязки не было

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

предложенный вами вариант ,скажем так остроумный :), но вряд ли может
быть использован в продакшене

в любом случае очень приятно знать что кто то использует Energine и
даже заморачивается с такими сложностями
не стесняйтесь, задавайте вопросы, вносите предложения, мы по минимуму
вас выслушаем :), а при возможности - поможем


> С уважением, Виталий.
>
>
>
>
>
> --
> Вы получили это сообщение, поскольку подписаны на группу Energine content management framework.
>
> Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу ener...@googlegroups.com.
> Чтобы отменить подписку на эту группу, отправьте сообщение по адресу energine+u...@googlegroups.com.
> О дополнительных функциях можно узнать в группе по адресу http://groups.google.com/group/energine?hl=ru.
>
>

--
Pavel Dubenko, web-developer

Reply all
Reply to author
Forward
0 new messages