簡體   English   中英

Laravel Route / {username}在表單操作中

[英]Laravel Route /{username} in form action

我目前正在Laravel-5.3中處理圖片上傳。 我的“個人資料頁面”路線定義為:

/* GET request to show the profile page */

Route::get('/{username}', [
    'uses' => '\App\Http\Controllers\ProfileController@getProfile',
    'as'   => 'profile.index',

]);

/* POST request to update the Avatar (display pic) */

Route::post('/{username}', [
    'uses' => '\App\Http\Controllers\ProfileController@updateAvatar',
    'as'   => 'profile.index',
]);

因此,配置文件URL幾乎類似於example.com/john (用“ john”作為用戶名)

在表格中,我必須定義“動作”。

<form enctype="multipart/form-data" action="" method="POST">

如何在表單操作中定義路由,以便將用戶重定向到各自的路由; 類似於“ example.com/john ”。

我想我不能直接定義<form action="/{username}">因為我將被帶到example.com/{username}

如果您需要當前用戶的路由,可以執行以下操作:

<form enctype="multipart/form-data" action="{{ url(Auth::user()->name) }}" method="POST">

UPD:對於命名路線,您可以使用route助手

<form enctype="multipart/form-data" action="{{ route('profile.index', ['username' => 'username_here']); }}" method="POST">

在命名路由時,可以使用該名稱通過route()幫助器定義URL,並將參數數組作為第二個參數傳遞。

<form enctype="multipart/form-data" 
      method="POST"
      action="{{ route('profile.index', [
          'username' => Auth::user()->name
      ]) }}">

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM