我正在制作一个简单的 ruby on Rails 应用程序,但遇到了这个问题

问题描述 投票:0回答:1

undefined method `id' for nil:NilClass

” nil:NilClass 的未定义方法`id'“

我正在制作一个简单的 ruby on Rails 应用程序,但遇到了这个问题

测验中没有方法错误#start_quiz 显示 /mnt/c/thirty_projects_with_ruby_on_rails/quiz_game/app/views/quiz/start_quiz.html.erb 第 5 行提出的位置:

nil:NilClass 的未定义方法“id” 提取的源代码(第 5 行附近):

<%= form_tag('/check_answer', method: 'post') do %> <%= hidden_field_tag 'question_id', @question.id %>

<%= radio_button_tag 'selected_answer', @question.correct_answer %> <%= label_tag 'selected_answer', @question.correct_answer %>

javascript html rubygems m todo
1个回答
0
投票

这是因为你的@question变量被设置为nil,或者之前从未定义过。您需要检查它的定义位置并添加一个控件以使其出现,或者在您的 html 中添加一个 if else,如下所示:

@question.present? ? @question.id : "-"
© www.soinside.com 2019 - 2024. All rights reserved.