0

我是新手Symfony。我只想知道是否可以使用createForm方法创建登录表单。我已经有一个LoginTYpeimplemanting buildForm方法,它创建一个包含表单所有必要字段的数组(_username, _password, submit button)

在我的控制器中,我使用:

$form = $this->createForm(new LoginType(), $login, array('action' => $this->generateUrl('login_check')));

$login只是平面数据类的一个实例,其成员(_username, _password)在实体目录中的 getter 和 setter。

我渲染:

return $this->render('LppdgProfessionalBookletBundle:Login:login.html.twig', array('error'=> $error, 'form' => $form->createView()));

HTML 表单显示的来源: name="login[_username]"for "name"field 和name="login[_password]for " password" field。有什么办法可以避免名称字段在数组中。更多:当使用手动表单时,一切正常。

谢谢。

洛朗

4

1 回答 1

0

在 app/config/security.yml 文件中设置名称:

        form_login:
            provider:            cerad_account_user_provider
            login_path:          cerad_account_login
            check_path:          cerad_account_login_check
            default_target_path: cerad_tourn_home

            username_parameter:  cerad_account_signin[username] # Adjust these three lines
            password_parameter:  cerad_account_signin[password]
            csrf_parameter:      cerad_account_signin[_token]
            csrf_provider:       form.csrf_provider
            intention:           authenticate
于 2013-08-16T13:15:54.523 回答