【发布时间】:2015-02-13 17:50:11
【问题描述】:
我将以下内容传递给results/index.html.erb 视图:
def create
@results = Quiz.where(user_id: current_user.id)
redirect_to results_path
end
(我已将上述操作更改为 BACK 创建)。
然后,在我的results/index.html.erb 视图中:
<div class="container">
<!-- Example row of columns -->
<div class="row">
<h1>Results page</h1>
<div class="col-md-12">
<p>Eventually a user's results will appear here...</p>
<p><%= @results %></p>
<p><%= @results.inspect %></p>
<p><%= current_user.quiz %></p>
<h4>Quiz Answer</h4>
<p><%= @results.answer1 %></p>
<p><%= @results.answer2 %></p>
<p><%= @results.answer3 %></p>
<p><%= @results.answer4 %></p>
<p><%= @results.answer5 %></p>
<p><%= @results.answer6 %></p>
<p><%= @results.answer7 %></p>
<p><%= @results.answer8 %></p>
</div>
</div>
<footer>
<p><a class="btn btn-default" href="showmetheskills.html" role="button">next</a></p>
</footer>
</div> <!-- /container -->
(我知道在模型上具有编号属性不是“最佳实践”;忽略那部分。)
我得到错误:
undefined method 'answer1' for nil:NilClass
为什么@results nil,当我在 Rails 要求的操作中设置它时?
Quiz 是在QuizzesController 中创建的:
def new
@user = current_user
@quiz = Quiz.create(user_id: current_user.id)
end
触发quizzes/new.html.erb 呈现部分测验。
有什么问题?
【问题讨论】:
标签: ruby-on-rails ruby