1
A
回答
0
你應該有兩條路線來處理表單。其中一個使用GET
作爲HTTP動詞並顯示錶單,另一個使用POST
並處理表單。我將用一個使用表單來更新用戶細節和兩個簡單路由定義的例子來說明。
表單視圖,讓我們把它在resources/view/forms
user_details.blade.php
和存儲,可以是這樣的:
<form action="update-user/{$user->id}" action="POST">
<input type="text" name="name" value="{{ $user->name }}">
<input type="text" name="phone" value="{{ $user->phone }}">
<input type="text" name="email" value="{{ $user->email }}">
<button type="submit">Save</button>
</form>
現在你應該定義了兩個途徑:一個是顯示的形式,另一種處理形式。下面的代碼中的註釋解釋的邏輯:
// Accessing http://domain.com/update-user/1 from the browser
// will show the user update form for the user with ID 1
Route::get('update-user/{id}', function ($id) {
// Get the current user details so you can pass them to the view
$user = User::find($id);
return view('forms.my_form')->with(compact('user'));
});
// Using the same path `update-user/1` but with POST for your
// form action will match this `Route::post` definition so it
// will process the submitted form
Route::post('update-user/{id}', function(Request $request, $id) {
$user = User::find($id);
$user->fill($request->only('name', 'phone', 'email');
$user->save();
// After you've finished processing the form redirect to
// the `update-user/{id}` route path, but since it's
// using GET for the redirect it will match the route
// definition that shows the form
return redirect()->to('update-user/' . $id);
});
有了這樣的處理形式和重定向回自動意味着當回擊你總是要回Route::get
定義,只是給出了一個單獨的路徑表單,並且瀏覽器不會提示您需要重新提交表單的消息。
相關問題
- 1. 如何在頁面重新載入後只更新表格
- 2. 如何停止頁面重新載入後重新加載
- 3. 通過JavaScript重新載入頁面並重發表格信息
- 4. Laravel 4驗證失敗後將輸入重定向回頁面
- 5. 超時加載重載頁面時出現硒錯誤頁面
- 6. 保持頁面重新加載後表格的擴展狀態
- 7. Laravel 5會話超時後刷新登錄頁面
- 8. 使用PHP和Javascript提交表單後重新載入頁面
- 9. 頁面正在重新加載時提交表格jquery ajax
- 10. ajax插入後,加載所有插入列表,無需重新加載頁面
- 11. Bootstrap 4 Navbar在頁面加載時摺疊移動(Laravel/laravel-mix)
- 12. 超時後重定向coldfusion頁面
- 13. 在頁面重新載入後加載動態生成的jQuery頁面
- 14. 在Laravel 4中沒有頁面加載
- 15. 如何在對話框關閉後重新載入頁面/刷新頁面
- 16. 在Facebook登錄後重新加載我的頁面時,Laravel Socialite InvalidStateException在AbstractProvider.php中
- 17. 重新加載$(document).ready(function()重新加載ajax頁面後
- 18. 如何自動重新加載會話超時頁面
- 19. Php,循環後重新加載頁面
- 20. 在後臺重新加載頁面
- 21. 頁面jquery後自動重新加載
- 22. PHP會話後重新加載頁面
- 23. 頁面重新加載後的斷點
- 24. 更改URL後重新加載頁面
- 25. 頁面在提交後重新加載
- 26. 「Jeditable」請求後重新加載頁面
- 27. 通過超鏈接重新加載頁面後保留表單值點擊
- 28. laravel 4頁面不適用於新手
- 29. jQuery dataTable 1.7.6刷新表格無需重新加載頁面
- 30. 重新加載當前函數後無時間重新加載頁面
感謝您的回答! 首先,我們談論Laravel 4,但這可能並不重要。 問題是:如果通過get獲得刀片的第一個視圖,我立即在幾秒鐘內確認該表單,因此我收到錯誤消息。 – user2588688
我不知道我關注。如果您在顯示1秒或1分鐘後提交表格,這應該沒有關係。這可能是特定於您的代碼的東西,所以請編輯您的問題以包含與問題相關的代碼。 – Bogdan
我不這麼認爲。也許它是一個插件或其他類似的東西... 我會更新問題 – user2588688