2016-09-26 7 views
1

マイグレーションを使用して自分のDBのテーブルに新しい列を追加しました。列が正しく作成されました。しかし、私が値を書き込もうとすると、何も書かれません。これは私のコードです:Laravel - テーブルの新しい列に何も書き込まない

return ['answered' => $answered] 

そして、私はそこに正しい値を得ていた。答え

if ($alternativeId > 0) { 
      $answered = 'yes'; 
     } 
     else { 
      $answered = 'not';  
     } 

     $answer = Answer::create([ 
      'question_id' => $questionId, 
      'player_id' => $player->id, 
      'quiz_id' => $quiz->id, 
      'score' => $score, 
      'answered' => $answered 
     ]); 

変数$は、私はそのコンソールで、とき私はそれをテストしていたテストしている、値を取得しますしかし、DBには何も書かれていませんでした。なぜそれが起こっているのか分かりませんか?

+0

モデルの '$ fillable'属性にカラムを追加しましたか? – aynber

答えて

5

createメソッドがmass assignmentを使用しているため、$fillable配列にansweredを追加する必要があります。

+1

もちろん、私はそれを逃した、ありがとう! – Marco