Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Добрый день.
Подскажите есть ли возможность автоматического генерирования форм для модели.
Объясняю на примере.
Я работаю со старым самописным фреймворком и там можно сделать примерно так
В модели:
public function init()
{
$this->fields[$this->table] = array(
'id' => array(
'label' => 'ID',
),
'status' => array(
'label' => 'Статус (status)',
'default' => 1,
'field' => 'radiogroup',
'options' => 'status_list',
'user_group' => array(1),
),
'uid' => array(
'default' => $this->user->id,
),
'postdate' => array(
'label' => 'Дата публикации (postdate)',
'default' => time(),
),
'title' => array(
'label' => 'Заголовок (title)',
'field' => 'input',
'rules' => 'trim|strip_tags|required|max_length[245]',
),
'short_title' => array(
'label' => 'Краткий Заголовок (short_title)',
'field' => 'input',
'rules' => 'trim|strip_tags|required|max_length[245]',
),
'category' => array(
'label' => 'Категория (category)',
'field' => 'select',
'options' => 'category_list',
'default' => isset($this->category) ? $this->category : '',
),
'body' => array(
'label' => 'Текст статьи (body)',
'field' => 'html',
'rules' => 'trim|required',
),
'img' => array(
'label' => 'Фото (img)',
'field' => 'file',
'rules' => 'callback[model.' . $this->model_class . '.upload,img]',
),
);
}
причем status_list это функция:
public function status_list($val = NULL)
{
static $list = array(
0 => 'Отключен',
1 => 'Включен',
);
if ($val !== NULL) {
return $list[$val];
}
return $list;
}
и потом для любой модели можно вывести ее форму для создания или изменения с валидацией и т.д.
типа модель->form->render.
Есть ли в ларавел что нить такое? +-
Ну или пакет может быть какой нибудь похожий.
Чтобы для каждой модели форму не готовить - а описать ее подобным образом и всё?
Не в сети
Страницы 1