如何将用户变量传递给路由器

时间:2019-03-13 15:42:58

标签: laravel forms post controller

我有这样的Laravel POST方法

{!! Form::open([
  'action'  => 'SubvraagController@store',
  'method'  => 'POST',
  'enctype' => 'multipart/form-data',])
!!} 

已设置参数(名称,电子邮件等),并且运行良好。 但是我也想将用户变量(HeadID)传递给控制器​​。

我尝试了几种方法,位置等,但是不起作用。如何将HeadID传递给我的SubvraagController?

这是我尝试过的:

我想将变量传递给SubvraagController。这是我尝试过的水:

{!! Form::open([
'action'  => 'SubvraagController@store',
'method'  => 'POST',
'enctype' => 'multipart/form-data',
'headid'=> $headID])
!!}

和这个 抱歉,英语不是我的母语。希望我可以更清楚一点。

我想将变量传递给SubvraagController。这是我尝试过的水:

{!! Form::open([
'action'  => 'SubvraagController@store',
'method'  => 'POST',
'enctype' => 'multipart/form-data',
$headID])
!!}

2 个答案:

答案 0 :(得分:0)

您随时可以使用Auth::user()在Laravel中访问当前登录的用户。

如果HeadID是用户变量,则假定您将使用以下命令在控制器中访问它:

Auth::user()->head_id(如果您使用的是正确的变量名)。

答案 1 :(得分:0)

您可以这样做:

命名您的路线。在您的web.php文件中,将此路由命名为: Route::post('/yourEndPoint/{headID}', 'SubvraagController@store')->name('nameOfRoute');

下一步,您可以这样操作:

<form action="route('nameOfRoute', $headID)" method="POST" 'enctype'='multipart/form-data'>
@csrf
 //rest of form
</form>

在您的控制器中:

public function store($headID){
//variable will be availble here
}