Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 14.05.2018 16:22:57

Автоматическая форма для модели ларавел

Добрый день.

Подскажите есть ли возможность автоматического генерирования форм для модели.

Объясняю на примере.

Я работаю со старым самописным фреймворком и там можно сделать примерно так

В модели:

    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.

Есть ли в ларавел что нить такое? +-
Ну или пакет может быть какой нибудь похожий.

Чтобы для каждой модели форму не готовить - а описать ее подобным образом и всё?

Не в сети

Подвал раздела