既存のモデルを持つテーブルの新しい足場を生成した後にエラーが発生しています:NOT NULL constraint failed: questions.question_text
。足場を生成した後に 'NOT NULL制約に失敗しました'
これはbeen covered beforeですが、以下で行ったように、null値が設定されている場合の回答はありませんでした。
まず、私はすでにのように見えた、Questions
と題したこのテーブルのモデル/移行を生成していた:
..._私は指定していますことをここcreate_questions.rb
class CreateQuestions < ActiveRecord::Migration
def change
create_table :questions do |t|
t.belongs_to :category, index: true
t.string :question_text, :null => false
t.timestamps
end
end
end
お知らせnull => false
。
rails generate scaffold Questions --skip
サーバーを再起動した後、私は上記のエラーに実行しています:いくつかの時間を節約するために、私は私が簡単にQuestions
にデータを入力できるようにするために足場のコマンドを実行しました。私がヌル値に直接対処しているので、block in QuestionsController#create
に達したときにエラーが発生する理由がわかりません(言い換えれば、質問を作成しようとするとき)。
それが助け場合は、ここだけでなく、私のQuestion.rbモデルです:
class Question < ActiveRecord::Base
has_many :quiz_questions
has_many :quizzes, through: :quiz_questions
has_many :answers
belongs_to :category
accepts_nested_attributes_for :answers
end
は私が間違って何をしているのですが?
私はどのようにこの特定の足場工事を確認していないが、最も簡単な解決策は、この非NULLカラムのデフォルト値を指定することです: 't.string:QUESTION_TEXT、ヌル:falseの場合、デフォルト:「」' 。 – mudasobwa