2
當我生成的symfony 1.4模塊,它(例如)「新的」和「創建」這樣的方法產生只顯示建立部分):的Symfony代
public function executeNew(sfWebRequest $request)
{
$this->forward404Unless($request->isMethod(sfRequest::POST));
$this->form = new SomeForm();
if ($request->isMethod(sfRequest::POST)) {
$form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
if ($form->isValid())
{
$res_object = $form->save();
$this->redirect('results_show', $res_object);
}
}
}
什麼是違約產生的原因是什麼?我認爲下面的方法更加緊湊,增加了較少的路由和操作,並且不會更改第一個和下一個(如果有錯誤)形式顯示的URL。但默認的生成方法應該是最好的或最常用的。那麼,Sensio實驗室的人知道些什麼,但我不知道?
但可能會出現這種情況。用戶填寫表單(some_form/new),但犯了一些錯誤(重定向到some_form/create)。他沒有更多的時間來完成這項任務,但他希望將來完成一些填充(或者只是填寫表格)。用戶在這種情況下做什麼?是 - 書籤頁面。但是當他回來時他會看到什麼?! 404!因爲他會返回到僅使用POST方法工作的動作(some_form/create)。我不認爲這很好。 – kpower 2010-12-06 12:18:36