2017-07-16 10 views
2

を尊重しない

$lead = Lead::whereRaw('json_extract(lower(data), "$.email") = lower(?)', request()->input('email')); 
$lead->update(request()->all()); 

これはクエリビルダーに関連しているとしか考えられません。 $fillableを考慮して2番目のコードを取得するにはどうすればよいですか?

答えて

0

最初のクエリでは、常にモデルを返すfindOrFail()を使用します。

2番目のクエリでは、whereRaw()関数は1つ以上の行がこれらの条件に一致するかどうかを認識しないため、任意の数の要素を持つコレクションを返します。

2番目のクエリに->firstOrFail()を追加すると、最初の結果が得られます。結果が見つからない場合は失敗します。