我有一个问答应用程序,用户可以提出问题并获得答案。我在回答部分遇到了一些麻烦。
我试图将问题的ID存储在answers表中,但当我在控制台中检查它时,它总是返回空。
def new
#question scaffold
if user_signed_in?
@question = current_user.questions.build
respond_with(@question)
else
redirect_to new_user_session_path
end
#answer scafold
@answer = Answer.create
@question = Question.find(params[:id])
@answer.question_id = @question
@answer.save!
redirect_to root_path
end
def edit
end
def create
#create question
@question = current_user.questions.build(question_params)
@question.save
#create answer
@answer = Answer.create(answer_params)
@question = Question.find(params[:id])
@answer.question_id = @question
@answer.save!
redirect_to :back
end发布于 2016-02-22 20:45:54
您刚刚在操作中创建了问题,所以为什么您期望将问题id发送到操作,请检查以下内容:我更改了#create answer part以使用创建的问题:(我是否遗漏了什么?)
def create
#create question
@question = current_user.questions.build(question_params)
@question.save
#create answer
@answer = Answer.create(answer_params)
@answer.question = @question
@answer.save!
redirect_to :back
endhttps://stackoverflow.com/questions/35553896
复制相似问题