我有一個表單,我想在我的網站的幾個頁面中使用。 所以我呼籲這樣的方法在我的網頁:Symfony2呈現和表單
{{ render(controller('ProjectApplicationBundle:Application:form')) }}
我有我的formAction方法:
public function formAction()
{
$form = $this->createForm($type,$obj);
if('POST' == $this->getRequest()->getMethod()){
$form->submit($this->getRequest());
if($form->isValid()){
//redirect to a page after the form
}
}
//render the form template ...
}
這不是我的代碼,這只是一個例子。
所以我加入到創建一個路由送我的形式
project_application_form:
pattern: /form
defaults: { _controller: ProjectApplicationBundle:Application:form }
現在我的問題:)
1)我想使用的URL阻止訪問我的形式,只允許進行數據處理。
2)如果錯誤的頁面不重定向,所以窗體顯示沒有佈局,所以我想在窗體的頁面中顯示錯誤的形式。
編輯:我可能有第二點的解決方案,但這不是很合適。 在我的參數中設置渲染路線並返回到路線而不是呈現渲染窗體。最後,我使用會話來輸入錯誤。
我希望這對你很清楚,對不起我的英語。
你是什麼意思通過阻止訪問表單並只允許數據處理?您是否想讓路由僅可用於POST請求? – nifr
好像你必須在你需要的所有控制器動作中使用你的formtype – sergekv