如何在控制器中添加自定义数据 Laravel
How to add custom data in controller Laravel
我有一个表单可以发送 title, demo, text
之类的数据。这些字段可以由用户插入,但我在 table 中有 user_id
应该由框架本身自动插入。我不想创建 <input type='hidden' name='user_id' value='{{Auth::user()->id}}'>
因为它根本不安全。当用户必须填写表格时,如何自动填写 user_id
?
控制器
public function store(Request $request)
{
//TODO: ADD user_id to this data and insert into tbl
$v_data = $request->validate([
'title' => 'required|min:5',
'demo' => 'required',
'text' => 'required',
'category' => 'required|numeric',
]);
Post::create($v_data);
return redirect()->back();
}
而不是:
Post::create($v_data);
您可以使用:
Post::create($v_data + ['user_id' => auth()->id()]);
就去做..
public函数存储(请求$request)
{
//TODO: ADD user_id to this data and insert into tbl
$v_data=$request->validate([
'title'=>'required|min:5',
'demo'=>'required',
'text'=>'required',
'category'=>'required|numeric',
]);
$v_data['user_id']=auth()->user()->id;// this extra line
Post::create($v_data);
return redirect()->back();
}
我有一个表单可以发送 title, demo, text
之类的数据。这些字段可以由用户插入,但我在 table 中有 user_id
应该由框架本身自动插入。我不想创建 <input type='hidden' name='user_id' value='{{Auth::user()->id}}'>
因为它根本不安全。当用户必须填写表格时,如何自动填写 user_id
?
控制器
public function store(Request $request)
{
//TODO: ADD user_id to this data and insert into tbl
$v_data = $request->validate([
'title' => 'required|min:5',
'demo' => 'required',
'text' => 'required',
'category' => 'required|numeric',
]);
Post::create($v_data);
return redirect()->back();
}
而不是:
Post::create($v_data);
您可以使用:
Post::create($v_data + ['user_id' => auth()->id()]);
就去做..
public函数存储(请求$request) {
//TODO: ADD user_id to this data and insert into tbl
$v_data=$request->validate([
'title'=>'required|min:5',
'demo'=>'required',
'text'=>'required',
'category'=>'required|numeric',
]);
$v_data['user_id']=auth()->user()->id;// this extra line
Post::create($v_data);
return redirect()->back();
}