Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails ActiveRecord关系的Rails视图问题_Ruby On Rails_Ruby_Ruby On Rails 4_Activerecord - Fatal编程技术网

Ruby on rails ActiveRecord关系的Rails视图问题

Ruby on rails ActiveRecord关系的Rails视图问题,ruby-on-rails,ruby,ruby-on-rails-4,activerecord,Ruby On Rails,Ruby,Ruby On Rails 4,Activerecord,我有一个疑问: <% @answer = Answer.where(:question_id => @question.id, :correct => 1) %> @question.id,:correct=>1)%> 结果是: #<ActiveRecord::Relation [#<Answer id: 535, body: "d", notice: "", correct: true, question_id: 50, created_at: "201

我有一个疑问:

<% @answer = Answer.where(:question_id => @question.id, :correct => 1) %>
@question.id,:correct=>1)%>
结果是:

#<ActiveRecord::Relation [#<Answer id: 535, body: "d", notice: "", correct: true, question_id: 50, created_at: "2015-09-26 10:09:10", updated_at: "2015-09-26 10:09:10">]>
#
当我想这样做时:

<%= @answer.body %>

我得到了这个错误:

undefined method `body' for <Answer::ActiveRecord_Relation:0x0000000e99b7c8>
的未定义方法“body”

出什么问题了?

A
其中
查询返回一个
ActiveRecord\u关系
,它是一个对象集合

为了使代码正常工作,您必须附加
.last
first
以返回单个对象

<% @answer = Answer.where(:question_id => @question.id, :correct => 1).last %>
@question.id,:correct=>1)。最后%>

A
其中
查询返回一个
ActiveRecord\u关系
,该关系是对象的集合

为了使代码正常工作,您必须附加
.last
first
以返回单个对象

<% @answer = Answer.where(:question_id => @question.id, :correct => 1).last %>
@question.id,:correct=>1)。最后%>

A
其中
查询返回一个
ActiveRecord\u关系
,该关系是对象的集合

为了使代码正常工作,您必须附加
.last
first
以返回单个对象

<% @answer = Answer.where(:question_id => @question.id, :correct => 1).last %>
@question.id,:correct=>1)。最后%>

A
其中
查询返回一个
ActiveRecord\u关系
,该关系是对象的集合

为了使代码正常工作,您必须附加
.last
first
以返回单个对象

<% @answer = Answer.where(:question_id => @question.id, :correct => 1).last %>
@question.id,:correct=>1)。最后%>
未定义的方法“body” 回答::ActiveRecord_关系:0x0000000e99b7c8

如您所见,
@answer
返回一个
ActiveRecord::Relation
,它是记录/对象的集合,因此您不能简单地使用
@answer.body

解决方案:

您可以迭代
@answer

<% @answer.each do |answer| %>
  <%= answer.body %>
<% end %>

未定义的方法“body” 回答::ActiveRecord_关系:0x0000000e99b7c8

如您所见,
@answer
返回一个
ActiveRecord::Relation
,它是记录/对象的集合,因此您不能简单地使用
@answer.body

解决方案:

您可以迭代
@answer

<% @answer.each do |answer| %>
  <%= answer.body %>
<% end %>

未定义的方法“body” 回答::ActiveRecord_关系:0x0000000e99b7c8

如您所见,
@answer
返回一个
ActiveRecord::Relation
,它是记录/对象的集合,因此您不能简单地使用
@answer.body

解决方案:

您可以迭代
@answer

<% @answer.each do |answer| %>
  <%= answer.body %>
<% end %>

未定义的方法“body” 回答::ActiveRecord_关系:0x0000000e99b7c8

如您所见,
@answer
返回一个
ActiveRecord::Relation
,它是记录/对象的集合,因此您不能简单地使用
@answer.body

解决方案:

您可以迭代
@answer

<% @answer.each do |answer| %>
  <%= answer.body %>
<% end %>

其中
返回一个(看起来像一个数组,但不是),它是模型对象的集合,因此@answer是一个集合,您不能使用它直接调用
body
属性

您可以这样做:

<% @answer = Answer.where(:question_id => @question.id, :correct => 1).first %>
@question.id,:correct=>1)。第一个%>
或:



如果记录存在,它将返回单个对象。

其中
返回一个(看起来像一个数组,但不是),这是一个模型对象的集合,因此@answer是一个集合,您不能使用它直接调用
body
属性

您可以这样做:

<% @answer = Answer.where(:question_id => @question.id, :correct => 1).first %>
@question.id,:correct=>1)。第一个%>
或:



如果记录存在,它将返回单个对象。

其中
返回一个(看起来像一个数组,但不是),这是一个模型对象的集合,因此@answer是一个集合,您不能使用它直接调用
body
属性

您可以这样做:

<% @answer = Answer.where(:question_id => @question.id, :correct => 1).first %>
@question.id,:correct=>1)。第一个%>
或:



如果记录存在,它将返回单个对象。

其中
返回一个(看起来像一个数组,但不是),这是一个模型对象的集合,因此@answer是一个集合,您不能使用它直接调用
body
属性

您可以这样做:

<% @answer = Answer.where(:question_id => @question.id, :correct => 1).first %>
@question.id,:correct=>1)。第一个%>
或:



如果记录存在,它将返回单个对象。

谢谢。我试过了。首先。在这种情况下,.first不起作用有什么区别?如果您没有从
@answer.body
得到响应,那么应该没有区别。body
可能意味着
:body
属性为空。在
rails控制台中尝试
where
查询,以便查看完整的响应。谢谢。我试过了。首先。在这种情况下,.first不起作用有什么区别?如果您没有从
@answer.body
得到响应,那么应该没有区别。body
可能意味着
:body
属性为空。在
rails控制台中尝试
where
查询,以便查看完整的响应。谢谢。我试过了。首先。在这种情况下,.first不起作用有什么区别?如果您没有从
@answer.body
得到响应,那么应该没有区别。body
可能意味着
:body
属性为空。在
rails控制台中尝试
where
查询,以便查看完整的响应。谢谢。我试过了。首先。在这种情况下,.first不起作用有什么区别?如果您没有从
@answer.body
得到响应,那么应该没有区别。body
可能意味着
:body
属性为空。在
rails控制台中尝试
where
查询,以便查看完整的响应。或者,如果需要一条记录,可以使用
find\u by
而不是