ruby-on-rails - RoR:如何检索关系或集合的各个属性
问题描述
我想列出我关注的用户
我的模型:
Relationship.rb
belongs_to :follower, class_name: "User"
User.rb
has_many :followers, through: :passive_relationships, source: :follower
在我看来
<%= current_user.followers.collect { |follower| follower.username } %>
这给出了观点:
Following
["Lisa", nil, "Derek"] etc
我怎样才能像这样在我的视图中正常列出这些用户?
Lisa
Derek
etc...
解决方案
当然,这取决于您希望它如何显示。但这很容易,例如,假设您正在使用erb
渲染,您可以通过迭代来完成:
<% current_user.followers.pluck(:username).compact.each do |follower_username| %>
<%= follower_username %>
<br />
<% end %>
请注意,我使用 ARpluck
而不是map
,这在 Rails 世界中更有效且更惯用,并且我过去常常compact
排除nil
值。
推荐阅读
- step - STEP 文件中无意义的数据重复
- c++ - 找不到我存储到地图中的值
- java - 找不到符号 - 符号类日期 - 位置包 java.util
- google-cloud-intellij - 无法在 Cloud Code for Intellij 中使用 Cloud Run 查看本地部署日志
- npm - 如何在 Chromebook 上安装 NPM?
- sql - 无法在 SQL Server 中使用所需的值进行选择
- java - 显示来自数据库android的图像
- ruby-on-rails - 使用 Rails 进行低级缓存
- apache-spark - pySpark v3.0.1 的图框
- python - Python函数因字符串索引超出范围错误而中断