2017-06-09 23 views
0

我有Symfony應用程序,我嘗試提交一個簡單的表單到動作函數..顯然我的註釋是錯誤的,但我不知道如何解決它們。這裏是完整的錯誤註解錯誤使用symfony3期望值,得到「POST」

[語法錯誤]期望值,得到了 'POST' 在位置58中的方法 的appbundle \控制器\ ProjectController ::的showAction()在 C:\ XAMPP \ htdocs中\任務管理\ SRC \ AppBundle/Controller /(從 導入的 「C:\ xampp \ htdocs \ TaskManager \ app/config \ routing.yml」)。

這裏是我試圖show.html.twig

<form method="post"> 
    <input type="submit" name="approve" value="Approve"> 
    <input type="submit" name="reject" value="Reject"> 
</form> 

提交的原因形式背後卻是,我有一個單一類型的用戶可以批准或拒絕的項目。該用戶不應該爲了更改這兩個字段而去編輯頁面。相反,它應該點擊兩個按鈕,值應該改變,而不需要做其他事情。我的想法是讓在showAction()這段代碼 - 之後,我改變沖洗它們,所以當項目再次表明,它會被批准或拒絕那些我打算值

if (isset($_POST['approve'])) { 
    $project->setApproved(true); 
    $project->setRejected(false); 
} 
elseif (isset($_POST['rejected'])) { 
    $project->setRejected(true); 
    $project->setApproved(false); 
} 

。這裏的關鍵是不應該有字段。當我想展示一個項目時,我已經擁有了一切所需的東西來刷新它。下面是我對的showAction()註解 -

/** 
* Finds and displays a project entity. 
* 
* @Route("/{id}", name="project_show") 
* @Method("GET","POST") 
*/ 

就比較這裏是我在editAction()標註的正常工作

/** 
* Displays a form to edit an existing project entity. 
* 
* @Route("/{id}/edit", name="project_edit") 
* @Method({"GET", "POST"}) 
*/ 

什麼我需要能夠提交這一個簡單的形式,我的showAction()

回答

3

你好像在@Method缺少註釋括號({}

試圖改變這一點:

* @Method("GET","POST") 

要這樣:

* @Method({"GET","POST"}) 
+0

謝謝!!這解決了我的問題。 –

相關問題