Релизация кастомных полей в форме
Релизация кастомных полей в форме
Всем привет, я только начал изучать Yii2 и возник вопрос, в доках не видел такого. Надоумьте, как можно реализовать "мультиформы", то есть например есть профиль пользователя и я как админ хочу в любой момент через CRUD добавить к профилю еще поле, например "день рождения", соответственно чтобы это поле попало в валидацию. Чтобы не городить велосипеды, может быть есть какой-то более менее стандартный способ
Re: Релизация кастомных полей в форме
и конечно же чтобы волшебным образом знало как валидироваться?Adren писал(а):соответственно чтобы это поле попало в валидацию
Re: Релизация кастомных полей в форме
crud делает грубую балванку. И как написал Demon_id создав просто поле ты мало что добавишь т.к. может быть различная валидация поля. И валидация может быть сложной вплоть до написания своего метода валидации. быстрее добавить поля вручную и прописать правила. Плюс прописать лейблы и так далее.
Если хочешь сделать какую-то универсальную штуку придется подумать и сделать сделать генератор который будет хранить поля и валидацию в бд и генерировать на лету формы из таблицы. Но я сам на Yii такое не реализовывал. делал до того как узнал фреймворках.
Если хочешь сделать какую-то универсальную штуку придется подумать и сделать сделать генератор который будет хранить поля и валидацию в бд и генерировать на лету формы из таблицы. Но я сам на Yii такое не реализовывал. делал до того как узнал фреймворках.
Re: Релизация кастомных полей в форме
задача изначально нетипичная, похожа на конструктор форм. Как в друпале модуль webform.
Учитывая что в yii конструкторы форм отсутствуют, то придется самому потрудиться чтобы подобное воплотить в жизнь.
Учитывая что в yii конструкторы форм отсутствуют, то придется самому потрудиться чтобы подобное воплотить в жизнь.
Re: Релизация кастомных полей в форме
Когда писали что-то типа своей админки делали так.
На аяксе был визард который при создания формы и выборе соответствующих полей создавал таблицу и колонки с соответствующими типами данных и простой валидацией. Если нужно было сделать селект то соответственно указывалась таблица и 2 поля для который подготавливал массив ключ=значение.
У Yii можно сделать подобное НО
- запаришься реализовывать всю валидацию (валидацию если не знаешь можно сделать динамическую даже без конкретной модели)
- нужно в сложных таблицах предусматривать индексы
- работа большая и займет прилично времени
Если не секрет чего ты хочешь добиться типа свой цмски с конструктом?
На аяксе был визард который при создания формы и выборе соответствующих полей создавал таблицу и колонки с соответствующими типами данных и простой валидацией. Если нужно было сделать селект то соответственно указывалась таблица и 2 поля для который подготавливал массив ключ=значение.
У Yii можно сделать подобное НО
- запаришься реализовывать всю валидацию (валидацию если не знаешь можно сделать динамическую даже без конкретной модели)
- нужно в сложных таблицах предусматривать индексы
- работа большая и займет прилично времени
Если не секрет чего ты хочешь добиться типа свой цмски с конструктом?
Re: Релизация кастомных полей в форме
Нет, просто хотелось бы решать рутинные задачи не миграциями, и редактированием моделей, а из интерфейса, очень часто бывает так что нужно добавить поле в профиль или в настройки проекта "по-быстрому". Я не говорю что мне прямо нужно супер решение для всех, просто именно для профиля это было бы удобно, думаю надо делать динамическую валидацию просто(с простыми правилами) Спасибо за советыGibsonG писал(а):Когда писали что-то типа своей админки делали так.
На аяксе был визард который при создания формы и выборе соответствующих полей создавал таблицу и колонки с соответствующими типами данных и простой валидацией. Если нужно было сделать селект то соответственно указывалась таблица и 2 поля для который подготавливал массив ключ=значение.
У Yii можно сделать подобное НО
- запаришься реализовывать всю валидацию (валидацию если не знаешь можно сделать динамическую даже без конкретной модели)
- нужно в сложных таблицах предусматривать индексы
- работа большая и займет прилично времени
Если не секрет чего ты хочешь добиться типа свой цмски с конструктом?