Parameters Laravel 5.1在$request中传递参数的干净方法->;全部()
我正在寻找将post_id值插入$request->all()的方法。到目前为止,我掌握的代码是:Parameters Laravel 5.1在$request中传递参数的干净方法->;全部(),parameters,request,laravel-5.1,Parameters,Request,Laravel 5.1,我正在寻找将post_id值插入$request->all()的方法。到目前为止,我掌握的代码是: public function createReview(ReviewRequest $request, $id) { $review = Auth::user()->reviews()->create($request->all()); $review->task_id = $id; $review->
public function createReview(ReviewRequest $request, $id) {
$review = Auth::user()->reviews()->create($request->all());
$review->task_id = $id;
$review->save();
return $review;
}
即使它工作,我正在寻找更干净的方式来做它。我的模型是:
User: hasMany->reviews ; hasMany->task
Review: belongsTo->user ; belongsTo->task
Task: belongsTo->user ; hasMany->reviews
一种方法是使用一个隐藏的输入字段,如:
<input type="hidden" name="task_id" value="{{$task->id}}">
然后,您的createReview方法看起来会更干净:
// Controller
public function createReview(ReviewRequest $request) {
$review = Auth::user()->reviews()->create($request->all());
return $review;
}
不要忘记调整routes.php。您还可以添加
// ReviewRequest.php
$rules = [ ...,
'task_id' => 'required',
];
查看您在ReviewRequest中的规则,以确保在创建任务时每个审阅都属于任务。一种方法是使用隐藏的输入字段,如:
<input type="hidden" name="task_id" value="{{$task->id}}">
然后,您的createReview方法看起来会更干净:
// Controller
public function createReview(ReviewRequest $request) {
$review = Auth::user()->reviews()->create($request->all());
return $review;
}
不要忘记调整routes.php。您还可以添加
// ReviewRequest.php
$rules = [ ...,
'task_id' => 'required',
];
查看您在ReviewRequest中的规则,以确保在创建任务时每个审阅都属于任务