Tôi chỉ cần nâng cấp dự án Symfony 2.0.12 lên 2.1. Tôi cũng được cài đặt FosUserBundle, nhưng khi tôi chạy lệnhRegistrationFormType :: buildForm() không tương thích
php composer.phar update
sau đó sản lượng nhà soạn nhạc lỗi:
Loading composer repositories with package information
Updating dependencies
Writing lock file
Generating autoload files
PHP Fatal error: Declaration of User\UserBundle\Form\Type\RegistrationFormType::buildForm() must be compatible with that of Symfony\Component\Form\FormTypeInterface::buildForm() in /home/mark/dev/proj/src/User/UserBundle/Form/Type/RegistrationFormType.php on line 38
Fatal error: Declaration of User\UserBundle\Form\Type\RegistrationFormType::buildForm() must be compatible with that of Symfony\Component\Form\FormTypeInterface::buildForm() in /home/mark/dev/proj/src/User/UserBundle/Form/Type/RegistrationFormType.php on line 38
Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the post-update-cmd event terminated with an exception
Đó là cái gì mà RegistrationFormType trước đây của tôi là không tương thích với giao diện mới hình thức Symfony 2.1 nói.
composer.json My
// ...
"friendsofsymfony/user-bundle": "*",
//...
My RegistrationFormType.php
<?php
namespace User\UserBundle\Form\Type;
use Symfony\Component\Form\FormBuilderInterface;
use FOS\UserBundle\Form\Type\RegistrationFormType as BaseType;
class RegistrationFormType extends BaseType
{
public function buildForm(FormBuilder $builder, array $options)
{
parent::buildForm($builder, $options);
// add your custom field
$builder->add('name')
->add('surname')
->add('gender', 'choice', array(
'choices' => array('m' => 'Male', 'f' => 'Female'),
'empty_value' => 'Please select',
))
->add('address')
->add('zip')
->add('country', 'country', array(
'empty_value' => 'Please select',
))
->add('dateOfBirth', 'date', array(
'empty_value' => '',
'years' => range(date('Y')-100, date('Y')),
))
->add('agree', 'checkbox', array(
'label' => 'Check here to agree to the sites terms and Conditions and Data Privacy Policy.',
));
}
public function getName()
{
return 'user_user_registration';
}
}
Bất cứ ý tưởng gì là sai?
Cảm ơn. Nó hoạt động. – repincln