【发布时间】:2019-04-05 01:54:41
【问题描述】:
我从两个地方调用控制器方法store。首先直接从表单提交,意味着一旦我提交了来自store的方法就会被调用。
第二种方法是从laravel的其他方法中调用store方法。这是store方法代码。
public function store(MedicalAidRequest $request)
{
//
if(Auth::check()){
$medicalAidRequest = session('medical_aid_request', $request->all());
$medicalAidRequest['user_id'] = Auth::id();
return $this->aidRepository->add($medicalAidRequest);
}else{
session(['medical_aid_request' => $request->all()]);
return redirect('login')->with('from', 'aid_request');
}
}
我使用这段代码是因为我想达到以下要求。
- 如果用户已登录,请提交医疗救助。
- 如果用户未登录,则将请求数据存储在会话中并请求登录,一旦用户登录,则再次调用
store方法从会话中检索表单数据并保存到数据库。
但是当我在记录后内部调用store 方法时,由于store 参数中的MedicalAidRequest 在调用store 方法之前验证来自表单请求的数据,验证失败。那么我该如何实现呢?
【问题讨论】:
标签: laravel validation