gpt4 book ai didi

ruby-on-rails - 在 View 中渲染 Rails 模型关联

转载 作者:行者123 更新时间:2023-12-04 05:51:49 25 4
gpt4 key购买 nike

我有以下三个表格:

blogs (id, name, description)

user_blogs (id, user_id, blog_id)

users (id, email, gender)

我正在遍历用户,我想显示他们所属的所有 user_blogs。在 View 中执行此操作的最佳做​​法是什么?我已经有了下面的代码。现在,我想添加一个显示基于 user_blogs 关联的 blogs.name 列表的列。

  <% @users.each do |user| %>
<tr>
<td><%= user.id %></td>
<td><%= user.custom_id %></td>
<td><%= user.email %></td>
</tr>
<% end %>

最佳答案

我认为以下方法可行:

  <% @users.each do |user| %>
<tr>
<td><%= user.id %></td>
<td><%= user.custom_id %></td>
<td><%= user.email %></td>
<td>
<ul>
<% user.user_blogs.blog.each do |blog| %>
<li><%= blog.name %></li>
<% end %>
</ul>
</td>
</tr>
<$ end %>

但是(假设您的关联设置正确),如果您在用户类中放入以下内容:

has_many :user_blogs
has_many :blogs, through: :user_blogs

您可以删除 user_blogs,并在您的 View 中使用以下内容。

  <% @users.each do |user| %>
<tr>
<td><%= user.id %></td>
<td><%= user.custom_id %></td>
<td><%= user.email %></td>
<td>
<ul>
<% user.blogs.each do |blog| %>
<li><%= blog.name %></li>
<% end %>
</ul>
</td>
</tr>
<$ end %>

关于ruby-on-rails - 在 View 中渲染 Rails 模型关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17116148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com