如何将表单请求(App\Http\Requests)
中的变量返回到Controller (App\Http\Controllers)
?
我在Form Requests上保存了函数persist()的记录。
我的目标是传递生成的ID,以便我可以在编辑模式下为用户重定向页面。出于某种原因,Controller无法从表单请求中接收id。
应用\ HTTP \请求\ MyFormRequests.php:
function persist()
{
$business = Business::create([
'cart_name' => $this['cart_name'],
'product' => $this['product']
]);
return $myid = $business->id;
}
应用\ HTTP \控制器\ MyControllers.php:
public function store(MyFormRequests $request)
{
$request->persist();
return redirect()->route('mypage.edit.get', $request->persist()->$myid);
}
答案 0 :(得分:0)
重要强>
我必须补充一点,这不是推荐的方法。您的FormRequest应仅负责验证请求,而Controller则负责存储部分。但是,这将有效:
应用\ HTTP \请求\ MyFormRequests.php:
function persist()
{
return Business::create([
'business_name' => $this['business_name'],
'nationality' => $this['nationality']
])->id;
}
应用\ HTTP \控制器\ MyControllers.php:
public function store(MyFormRequests $request)
{
$id = $request->persist();
return redirect()->route('register.edit.get', $id);
}
答案 1 :(得分:0)
一个男人名字Snapey帮助了我:
function persist()
{
....
return $business;
}
public function store(MyFormRequests $request)
{
$business = $request->persist();
return redirect()->route('register.edit.get', $business->id);
}
希望这可以帮助将来的某个人。