好吧,这可能很简单,但我无法找到问题所在。 我已经尝试但没有匹配我的问题
我试图从表单类创建,而不是在控制器中创建表单..
这是代码..
这是来自控制器
/**
* @Route("login", name="login")
*/
public function loginAction (Request $request) {
$registration = new Registration();
$form = $this->createForm(LoginForm::class, $registration, array(
'method' => 'POST'
));
return $this->render(
'admin/login.html.twig',
array('form' => $form->createView())
);
}
内部控制器我使用USE来定义LoginForm,我在部分createForm中使用,所以这不是问题
这是来自FORM class
<?php
namespace AppBundle\AppForm;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
class LoginForm extends AbstractType {
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name')
->add('password')
->add('save', SubmitType::class);
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
array(
'data_class' => 'AppBundle\Entity\Registration'
));
}
public function getName()
{
}
}
答案 0 :(得分:6)
您在Symfony版本中遇到的问题。您使用Symfony3中的代码,而实际上有Symfony2。
将SubmitType::class
更改为submit
,将LoginForm::class
更改为new LoginForm()
,一切正常。
或者您可以更新您的Symfony版本,所有版本都可以使用您当前的代码。