Symfony2 FormType в JSON

0

Возможно ли каким-либо образом сериализовать Symfony2 FormType в JSON? У меня есть следующая форма для пользователя.

class UserType extends AbstractType
{
    /**
     * @param FormBuilderInterface $builder
     * @param array $options
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('name', 'text', array('label' => 'Name'))
            ->add('surname', 'text', array('label' => 'Surname'))
            ->add('username', 'text', array('label' => 'Username'))
            ->add('email', 'text', array('label' => 'Email'))
            ->add('isAdmin', 'checkbox', array('label' => 'Admin'));
    }
    ...
}

Можно получить следующий или похожий формат JSON с использованием самого Symfony2, или мне понадобится мой собственный парсер?

{
    "name": {
        "type": "text",
        "label": "Name"
    },
    "surname": { 
        "type": "text",
        "label": "Surname"
    },
    "username": {
        "type": "text",
        "label": "Username"
    },
    "email": {
        "type":"text",
        "label":"Email"
    },
    "isAdmin": {
        "type": "checkbox",
        "label" : "Admin"
     }
}
Теги:

2 ответа

0

Похоже, вы можете искать что-то вроде комплекта Liform, который позволяет вам создать схему JSON из формы Symfony.

0

Вы можете реализовать тему формы, которая будет выводить ваши виджеты так, как вы хотите. Здесь приведена ссылка на документацию Symfony, в которой объясняется, как создавать и применять формы.

Однако, если вы внедряете API (в противном случае, почему вам нужно получить форму как JSON?), Вам обязательно нужно взглянуть на FOSRestBundle, поскольку он реализует обработку форм и сериализацию.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню