我的问题与协会有关。原谅我,因为我正在学习这个。
我有两张桌子(父母和孩子)。我已经建立了父表被设置为has_many子节点的关联,子表有一个父节点,其中foriegn id设置为parent_id。这很好。
我的问题是,我想创建一个家庭观点,将父母和孩子一起展示并相互关联。所以它看起来像这样:
父姓
我很确定我需要创建一个族表并执行has_and_belongs_to_many关联但不知道如何将两者一起显示在上面 希望这是有道理的。
答案 0 :(得分:2)
如果您只是想让父母及其子女看到您不需要创建新表,请按以下步骤操作:
在你父母控制人的指数行动中(我考虑你要向所有父母展示他们的孩子所以我使用索引动作):
def index
@parents= Parent.all.includes(:children)
end
然后在 index.html.erb 视图中
<% @parents.each do |parent| %>
<%= parent.name%><br/>
<% parent.children.each do |child| %>
<%= child.name%><br/>
<% end %>
<% end %>
考虑到您已定义父与子模型之间的关联
答案 1 :(得分:0)
class Parent
has_many :children
end
class Child
belongs_to :parent
end
在控制器中
@parent = Parent.find(params[:id]).includes(:children)
在视图中
<% @parent.children.each do |child| %>
<%= child.name %>
<% end %>