使用模态存储数据并传递$ id变量

时间:2018-06-09 10:45:04

标签: php sql laravel laravel-blade

我想将变量ID从(the url is /xxxx/{{id}} )传递到商店

我有一个打开表单的模态框。然后使用下面显示的控制器存储此信息:

我尝试添加$id以通过控制器(the url is /xxxx/{{id}} )

OpenHome控制器

public function store(Request $request,$id)

    $option = new Option;
    $option->time = $request->input('time');
    $option->date = $request->input('date');
    $option->save();
    return view('option.create');
  

错误:输入错误:函数参数太少   App \ Http \ Controllers \ option :: store(),1通过,正好是2个预期

DD($请求 - >所有());

array:3 [▼
  "_token" => "7O23EkldYOYj1d7Fc2xNflcPWMY67ytGTkrymy9g"
  "time" => "00:12"
  "date" => "12-05-1996"
]

1 个答案:

答案 0 :(得分:0)

在您的问题中,您暗示更新现有记录,但在您的代码中,它意味着创建新选项。

如果您想使用$id = 1更新选项,则需要使用以下路线。

Route::put('/options/{id}', 'OptionController@update');

在你的控制器内。

public function update(Request $request, $id)
{
  $option = Option::find($id);
  $option->update([
    'time' => $request->input('time'),
    'date' => $request->input('date'),
  ]);

  // Redirect to display the list of options.
  return redirect('/options'); 
}

但是,如果您只想将另一个变量传递给store方法以便在store方法中使用,请确保Route在变量周围只有一组{}

Route::post('/option/{variable}', 'OptionController@store');

public function store(Request $request, $variable)
{
  // User the $variable passed as a route parameter.
}