我在Laravel 4中有一些奇怪的行爲。我有一個帶兩種形式的「設置」頁面,每個(應該)POST到控制器方法,更新數據庫並返回到設置頁面。然而,似乎有一個問題,無論是我的表單工作方式還是我的路線。Laravel 4 - 在同一頁上有多種形式?
下面是它是如何簡化:
設置頁面:(site.com/settings)
<div id="form-one" class="form-area">
{{ Form::open(array('action' => '[email protected]')) }}
{{ Form::text('optionvalue', 'Default')) }}
{{ Form::submit('Save Changes') }}
{{ Form::close() }}
</div>
<div id="form-two" class="form-area">
{{ Form::open(array('action' => '[email protected]')) }}
{{ Form::text('pagevalue', 'Default')) }}
{{ Form::submit('Save Changes') }}
{{ Form::close() }}
</div>
因此,基本上,在同一頁面上兩個不同的形式的發佈,以在兩個不同的方法相同的控制器 - 當方法成功時,它將它們重定向回「設置」。我不會發布的方法,因爲對它們進行測試和他們的工作,我相信這個問題是在路由文件:
routes.php文件
// Checks if a session is active
Route::group(array('before' => 'require_login'), function()
{
Route::group(array('prefix' => 'settings'), function()
{
Route::get('/', '[email protected]');
Route::post('/', '[email protected]editOption');
Route::post('/', '[email protected]');
});
});
現在我敢肯定它不喜歡兩條郵政路線就是這樣,但我想不到另一種方式來做到這一點,因爲表格在同一頁面上。我得到的錯誤:
Unknown action [[email protected]].
由於選項表格首先我猜。如果我將開放式刀片代碼(對於兩者)取出,它會加載頁面 - 但顯然,表單不會執行任何操作。
任何幫助將是很好的!提前致謝。