When is used custom primary key in model, ex>
protected $primaryKey = 'my_field';
Default query generated for searching is probaby ok, appending model prefix like model_my_field
SELECT .... WHERE model_my_field = ...
But… When u tried to update fields with $model->save();
this query was generated without model prefix field, and searching for clean $primaryKey.
UPDATE .... WHERE my_field = ...