- !ruby/object:Pacdoc
attributes:
id: 5
pac_id: 5
doc_id: 1
created_at: 2013-06-26 12:07:33.263881000 Z
updated_at: 2013-06-26 12:07:33.263881000 Z
- !ruby/object:Pacdoc
attributes:
id: 6
pac_id: 5
doc_id: 2
created_at: 2013-06-26 12:07:33.266881000 Z
updated_at: 2013-06-26 12:07:33.266881000 Z
已在变量 @pdocs 中收集了上述数据,并且能够挑出 doc_id
的值<%= @pdocs.each do |a| %>
<%= b = a.doc_id %>
<% end%>
现在想要使用结构doc_id从'doc'表中检索数据,下面的名称:字符串是模型
models
class Pacdoc < ActiveRecord::Base
attr_accessible :doc_id, :pac_id
belongs_to :pac
belongs_to :doc
end
class Pac < ActiveRecord::Base
attr_accessible :name
validates :name, :presence => :true
has_many :pacdocs
has_many :docs, :through => :pacdocs
end
class Doc < ActiveRecord::Base
attr_accessible :name
validates :name, :presence => :true
has_many :pacdocs
has_many :pacs, :through => :pacdocs
end
答案 0 :(得分:0)
我不确定我理解你想要什么,但我想你想要从Doc
模型中检索Pacdoc
中的外键匹配的数据。您实际上不需要手动匹配ID,ActiveRecord会为您处理。要检索您将要执行的Doc
的名称:
<%= @pdocs.each do |a| %>
<%= a.doc.name %>
<% end%>
虽然这样做时要小心N + 1个查询。