データがすでに存在するかどうかをチェックしています。データがすでに存在する場合は更新機能を使用し、そうでない場合は新しいレコードを挿入します。 その新しいレコードを挿入するが、私は将来的に重複する行にしたくない、レコードがすでに存在するかどうかを確認し、laravelに更新または挿入する方法?
public function store(Request $request)
{
$requestData = $request->all();
$jobseeker = new Jobseeker();
$jobseeker->fullname= $requestData['full name'];
$jobseeker->gender= $requestData['Gender'];
$jobseeker->messenger_user_id= $request->{'messenger user id'};
$jobseeker->save();
}
public function store(Request $request,$messenger_user_id)
{
$requestData = $request->all();
$my_msg_id = Jobseeker::where('messenger_user_id',$requestData['messenger user id'])->first();
if (is_null($my_msg_id)) {
$jobseekers = Jobseeker::find($messenger_user_id);
$jobseeker->fullname= $requestData['full name'];
$jobseeker->gender= $requestData['Gender'];
$jobseeker->messenger_user_id= $request->{'messenger user id'};
}
else{
$jobseeker = new Jobseeker();
$jobseeker->fullname= $requestData['full name'];
$jobseeker->gender= $requestData['Gender'];
$jobseeker->messenger_user_id= $request->{'messenger user id'};
$jobseeker->save();
}
}
誰かが、高度でのおかげで、私を導くことができます。
あなたはlaravelのfirstOrCreate/firstOrNewメソッドを聞いたことがありますか?ここのドキュメントをご覧くださいhttps://laravel.com/docs/5.5/eloquent#inserts –
こんにちは、私は前に聞いた、なぜですか? –
それでは、あなたの問題にそれらのメソッドを使うのが良いです。 –