/ / Symfony: Usar "action" como um nome de campo de formulário causa problemas - symfony, twig

Symfony: Usando "ação" como um nome de campo de formulário causa problemas - symfony, twig

Eu tenho um tipo de formulário que possui este campo:

        ->add("action", "text", array(
"required" => false,
))

O tipo de formulário é mapeado para uma entidade que possui uma propriedade action.

O problema é que, quando eu renderizo esse formulário em galho, o campo é preenchido previamente com a URL de ação HTTP do formulário, que claramente não é o que eu quero.

Preciso renomear o campo do formulário e a propriedade da entidade para evitar essa colisão?

Respostas:

3 para resposta № 1

Inicializei incorretamente o formulário no meu controlador. Eu estava fazendo isso:

    $filterForm = $this->createForm(new ActionLogFilterType(), array(
"action" => $this->generateUrl("admin.action_logs.index"),
"method" => "GET",
));

Quando eu precisava fazer isso:

    $filterForm = $this->createForm(new ActionLogFilterType(), null, array(
"action" => $this->generateUrl("admin.action_logs.index"),
"method" => "GET",
));

Então, eu posso realmente usar action como um campo de formulário como eu esperava.


0 para resposta № 2

No Symfony 2.3, são adicionadas as variáveis ​​método e ação, consulte http://symfony.com/doc/current/reference/forms/twig_reference.html. Então, sim, você terá que renomeá-lo.