投稿要求を使用してハンディキャップスコアを更新しようとしています。しかし、私はエラー:空の値からデフォルトのオブジェクトを作成しているようだ。apiコールを使用してlaravelの値を更新する
コード:
public function handicap(Request $request)
{
$user = Auth::user();
$rules = array(
'handicap' => 'required'
);
$validator = Validator::make(Input::all(), $rules);
// process the login
if ($validator->fails())
{
return response()->json(['msg' => 'Failed to update Handicap score!'], 200);
}
else {
if(Handicap::where('user_id', '=', $user->id)->exists())
{
$handicap = Handicap::find($user->id);
$handicap->user_id = $user->id;
$handicap->handicap = $request->input('handicap');
$handicap->save();
return response()->json(['msg' => 'You have successfully updated your handicap score!'], 200);
}
else
{
$handicap = new Handicap;
$handicap->user_id = $user->id;
$handicap->handicap = $request->input('handicap');
$handicap->save();
return response()->json(['msg' => 'You have added your handicap score successfully!'], 200);
}
}
}
ユーザーが他のブロックのコードが実行されるハンディキャップテーブルに存在し、他のユーザーのためのハンディキャップスコアを作成していない場合は、ブロックが実行され、スコアを更新する必要がある場合。私は多くの選択肢を試しましたが、動かすことはできません。何が間違っているのか分かりません。
returnを使って$ user、$ handicap変数を調べました。これらの変数には、テーブルに追加する必要がある情報があります。そのちょうどそれは更新していません。
ありがとうございます! –