mardi 19 février 2019

Laravel 5.7.13 - FirstOrCreate/FirstOrNew not storing value

I'm trying to update a table with two columns 'id' and 'comp_id'. I only want 'comp_id' to exist in the table one time, so I'm using firstOrCreate to do this.

This call is creating a record in the table because the id auto-increment keeps going up every time I try this, but the comp_id value is not being saved.

$connections = $connectionTable->where('base_id', $baseId)->get();
$noMatchTable = new noMatch;
foreach($connections as $connection){
 $rec = $noMatchTable->setTable($comparisonId.'_no_match')->firstOrCreate(['comp_id' => $connection->comp_id]);
}

I've also tried.

 $rec = $noMatchTable->setTable($comparisonId.'_no_match')->firstOrNew(['comp_id' => $connection->comp_id])->save();

In both cases $rec->id shows a new id.

Fillable for the model is set correctly

  #fillable: array:1 [
    0 => "comp_id"
  ]

What frightfully simple thing am I missing?



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire