我已使用迁移将新列添加到数据库中的表中。列已正确创建。但是当我试图写值的时候,什么也写不出来。这是我的代码:

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
        ]);

变量$answered得到一个值,我在控制台中测试过它,当时我使用:
return ['answered' => $answered]

我在那里得到了正确的值,但是数据库里什么也没有写。不知道为什么会这样?

最佳答案

您需要在answered数组中添加$fillable,因为create方法使用mass assignment

07-27 14:07