![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| shurup_312 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 27.3.2007 Репутация: нет Всего: нет |
Приветствую, винградовцы. Постараюсь максимально кратко.
Идея сделать систему модулей-конструкторов. Все модули состоят так или иначе из записей, будь то новости в модуле новостей или картинки в фотогалерее. У каждой записи есть элементики, из которых состоит запись - у новости это краткое и полное описание, название и дата выпуска допустим. У фотогалереи это сама фотка, ее название и допустим автор. Элеменентики опять же в плане верстки имеют конечно число отображений. В админке допустим в формах они могут быть выведены инпутами или селектами, которые один раз можно задать и все. То есть вот мы создали 5 полей в таблице и указали что первое будет инпутом, второе текстарией. третье селектом с такими-то полями. И тогда можно просто создать поля в таблице и сразу построятся формы добавления, редактирования. В общем-то примерно это сделано в yii в расширении gii, но хотелось бы чтобы было не в виде генератора кода, а в виде динамического движка, который один раз написан и какую ты ему таблицы не подсунь, он построит админскую часть зная только для какого кполя какой элементик. Вот где грамотно написать как именно должно строиться то или иное поле? |
|||
|
||||
| Sanchezzz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1670 Регистрация: 19.11.2006 Где: Voronezh Репутация: 41 Всего: 60 |
Я похожею задачу делал, в отдельную таблицу.
Структура проста table_name | config_json первое поле имя таблицы из БД второе поле это массив в JSON для таблицы ключ это названия колонки в таблице вложенные ключи type - тип что это? text texeditor image sort позиция если вы планируете вывод списком полей. Ваша идея не новая и я думаю если поискать в готовых решениях то можно найти полную реализацию. -------------------- Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS. |
|||
|
||||
| shurup_312 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 27.3.2007 Репутация: нет Всего: нет |
Если подскажете в какую сторону копать или хоть какой поисковый запрос сделать, то буду очень благодарен. |
|||
|
||||
| Fortop |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2200 Регистрация: 13.11.2007 Где: Донецк Репутация: 20 Всего: 42 |
где угодно. json, yaml, xml, да и просто php конфиги. Можно даже просто реализовать в виде набора классов. Вообще можно посмотреть в сторону гридов jqGrid например. -------------------- Мир это Я. Живее всех живых. |
|||
|
||||
| Sanchezzz |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1670 Регистрация: 19.11.2006 Где: Voronezh Репутация: 41 Всего: 60 |
Из моего опыта работы разработчика и слушания жалоб от клиентов, это будет худшие решение в плане удобства даже если по клику в гриде по нужной строки и всплывающем окне будет открыватеся форма.
Причем если используется задуманное для фремворка Yii то нужно использовать встроенный инструмент CGridView (yiiGidView). ТС Не знаю как поможет готовое если тут и так задача ясна как это сделать, уже подсказал. Получаем информацию о таблице в Yii через CDBShema или еврейский вариант
Дальше у вас есть должна быть таблица где вы для каждого поля сделаете конфиг что вы хотите увидеть когда человек будет тыкать заполнять форму, видеть для этого столбца инпут,список итд. -------------------- Понравился ответ "+" по репе, не забываем закрывать тему, заказы в LS. |
|||
|
||||
| shurup_312 |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 27.3.2007 Репутация: нет Всего: нет |
Sanchezzz, спасибо за подсказку. Мне идея нравится, я больше того думаю, можно этот конфиг брать первый раз из таблицы конфигов и продублировать запись для данного поля в комментарии для поля самой таблицы с данными модуля. И тогда даже не придется доп. запрос делать на вытаскивание конфига. Но я не закрываю тему, может кто еще идеи предложит.
Да и потом, вот еще вопрос, как по умному сделать, чтобы поле (допустим дата публикации новости, если новость отложенная) влияло на выборки товаров. Ну в смысле понятно, что оно никак не будет влиять если его в запрос не включишь, н как по уму сделать схему движка, чтобы перез запросом в БД добавлялись условия тех или иных полей? То есть мы вставили поле для указания даты отложенно публикации и все, на часть запросов это стало влиять. Может тут еще мысли есть? |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |