2014-06-10 80 views
0

我在Symfony2中新,我想創建一個簡單的表格,這裏是我的代碼: 控制器:symfony的功能「形式」不存在

public function testAction(Request $request) {  
    $form = $this->createFormBuilder() 
    ->add('name','text') 
    ->add('age','integer') 
    ->add('save','submit') 
    ->getForm() 
    ;//initializing the form 
    return $this->render('LoginLoginBundle:Default:test.html.twig', array  ('myform'=>$form->createView())); 
} 
} 
在樹枝文件

{%extends "::base.html.twig"%} 
{% block body %} 
{{ form(myform)}} 
{% endblock %} 

我得到這個錯誤: 未能加載類型「提交」 即使我刪除 - >添加(「保存」,「提交」)我得到這個錯誤:

The function "form" does not exist. Did you mean "form_row", "form_rest", "form_label", "form_errors", "form_widget", "form_enctype" in LoginLoginBundle:Default:test.html.twig at line 3 

回答

3

我認爲你有Symfony 2.2你應該更新到2.5。 但是,如果你想保留你的版本,你必須閱讀這個doc。他們告訴你,你需要使您的形式驗證碼:

{% extends "::base.html.twig"%} 
{% block body %} 
    <form action="{{ path('your_route') }}" method="post" {{ form_enctype(myform) }}> 
     {{ form_widget(myform) }} 

     <input type="submit" /> 
    </form> 
{% endblock %} 

(你可以看到,「提交」按鈕,必須在模板渲染,並且你不能用你的版本在控制器中添加它的Symfony)

+0

thx,它的工作原理,我不想更新,因爲我會在與其他供應商的依賴關係中遇到麻煩。但是請編輯'form'到'myform'來表明這是傳入的變量。 :) –

+0

很高興幫助你!對不起,我剛剛編輯它:) – Minipipo1