我正在使用Zendframework 2与ZfcUser和ZfcUserDoctrineORM。 我用一些附加信息扩展了普通用户。ZFCUser扩展形式
现在我想调整registerForm。为此我创建这种形式在ZfcUser \表格文件夹:
class UserRegister extends ZfcUser\Form\Register {
public function init(){
$this->add(array(
'name' => 'firstName',
'options' => array(
'label' => 'First Name',
),
'attributes' => array(
'type' => 'text'
),
));
$this->add(array(
'name' => 'name',
'options' => array(
'label' => 'Last Name',
),
'attributes' => array(
'type' => 'text'
),
));
}
}
在下一步骤我改变适于在Module.php的getServiceConfig()函数在ZfcUser文件夹:
'zfcuser_register_form' => function ($sm) {
$options = $sm->get('zfcuser_module_options');
$form = new Form\UserRegister(null, $options);
//$form->setCaptchaElement($sm->get('zfcuser_captcha_element'));
$form->setInputFilter(new Form\RegisterFilter(
new Validator\NoRecordExists(array(
'mapper' => $sm->get('zfcuser_user_mapper'),
'key' => 'email'
)),
new Validator\NoRecordExists(array(
'mapper' => $sm->get('zfcuser_user_mapper'),
'key' => 'username'
)),
$options
));
return $form;
},
致电时此错误消息显示寄存器url:
Fatal error: Cannot redeclare class UserRegister in C:\xampp\htdocs\THWDiver\vendor\zf-commons\zfc-user\src\ZfcUser\Form\UserRegister.php on line 24
我在做什么错?
您能否显示UserRegister.php的*完整*代码?似乎缺少一些东西(命名空间)。此外,不建议您将代码放入'ZfcUser'模块本身。很容易从'ZfcUser'模块扩展代码,并使用该代码而不是编辑'ZfcUser'的代码,从而使升级变得更加困难。 – kokx
感谢您的帮助。我修复了文件的“使用”部分。我如何扩展ZfcUser模块? – Iceman
我认为这将是值得一个单独的问题。 – kokx