2015-08-14 83 views
1

我開始一個新的Symfony項目,我使用FosUserBundle。我有我的登錄和註冊頁面工作,但我無法讓我的引導表單主題工作的登錄頁面。注意:它的確適用於註冊表單,因爲表單的變量實際上是指定的表單。FosUserBundle的形式與引導主題

這是我的模板:

{% extends '@Frontend/Layout/home.html.twig' %} 
{% form_theme form 'bootstrap_3_layout.html.twig' %} 

{% block title %}Login{% endblock %} 

{% block content %} 
    {% block fos_user_content %}{% endblock %} 
{% endblock %} 

我重寫使用孩子捆原FosUserBundle的模板。同樣,這適用於註冊表單,但不適用於註冊表單。當我去註冊頁面,我看源,我覺得這一點:

<label class="control-label required" for="fos_user_registration_form_username">form.username</label> 

正如你所看到的,標籤被稱爲form.username,使持有形式變量稱爲形式。我想這是whny {%form_theme形式%}工作,所以我看着登錄頁面:

Variable "form" does not exist in FOSUserBundle::layout.html.twig at line 2 

這是怪我,所以我刪除形式的主題,並期待在登錄頁面:

<label for="username">security.login.username</label> 

所以,我想:形式所謂的安全,讓我們做到這一點:

{% form_theme security 'bootstrap_3_layout.html.twig' %} 

但是,這並不工作。我的問題:登錄表單存儲在哪個變量中?我知道我可以重寫表單,但我認爲這些表單存儲在不同的變量中很奇怪,所以我的第二個問題是:爲什麼表單存儲在不同的變量中?

回答

3

幾天前我在同一個問題上運行。 FOSUserBundle沒有使用表單組件,所以它有簡單的表單模板。這意味着你不能在這裏使用Form Theme。太糟了。 :-(