[英]Symfony2 + FOSUserBundle registration form not submitting, only reloading
[英]Symfony2 FosUserBundle ordering registration form fields
我剛剛學習了如何使用fosuserbundle,我剛剛在實體和數據庫字段中添加了“名稱”列,現在,注冊表單如下所示:
Email :[_______________________________]
Username :[_______________________________]
Password :[_______________________________]
Verification:[_______________________________]
Name :[_______________________________]<-name
我的問題是,由於我后來添加了“名稱,字段”,因此如何使它像這樣排序。
Email :[_______________________________]
Name :[_______________________________]<-order name here
Username :[_______________________________]
Password :[_______________________________]
Verification:[_______________________________]
我應該從數據庫表還是從Form工廠訂購它?
謝謝,
將vendor / symfony / user-bundle / FOS / UserBundle / Resources / views / Registration / register_content.html.twig復制到app / Resources / FOSUserBundle / views / Registration / register_content.html.twig並進行以下更改:
供應商/ symfony /用戶捆綁/用戶捆綁/ FOS / UserBundle /資源/視圖/注冊/register_content.html.twig
<form action="{{ path('fos_user_registration_register') }}" {{ form_enctype(form) }} method="POST" class="fos_user_registration_register">
{{ form_widget(form) }}
<div>
<input type="submit" value="{{ 'registration.submit'|trans({}, 'FOSUserBundle') }}" />
</div>
</form>
app / Resources / FOSUserBundle / views / Registration / register_content.html.twig
<form action="{{ path('fos_user_registration_register') }}" {{ form_enctype(form) }} method="POST" class="fos_user_registration_register">
{{ form_start(form) }}
{{ form_errors(form) }}
{{ form_widget(form.email) }}
{{ form_widget(form.name) }}
{{ form_widget(form.username) }}
{{ form_widget(form.plainPassword.first) }}
{{ form_widget(form.plainPassword.second) }}
{{ form_end(form) }}
<input type="submit" value="{{ 'registration.submit'|trans({}, 'FOSUserBundle') }}" />
</form>
作為@repincln的答案的一種方式。 但是其他方法是更新表單構建器,因為您已經擴展了添加字段的能力。 我認為,如果您只是在構建表單時重新安排表單,那會更加輕松/整潔。 假設您已經按照FOSUserBundle文檔覆蓋了表格
public function buildForm(FormBuilderInterface $builder, array $options){
$builder
->add('email', 'email', array('label' => 'form.email', 'translation_domain' => 'FOSUserBundle'))
->add('name')
->add('username', null, array('label' => 'form.username', 'translation_domain' => 'FOSUserBundle'))
->add('plainPassword', 'repeated', array(
'type' => 'password',
'options' => array('translation_domain' => 'FOSUserBundle'),
'first_options' => array('label' => 'form.password'),
'second_options' => array('label' => 'form.password_confirmation'),
'invalid_message' => 'fos_user.password.mismatch',
))
;
}
使用您喜歡的那個。
快樂編碼...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.