【发布时间】:2019-01-18 00:31:33
【问题描述】:
如何预加载所有记录及其 URL?
这就是我在 jbuilder 中获取 URL 的方法:
# views/users/index.json.jbuilder
...
json.avatar_url user.avatar.attached? && rails_blob_url(user.avatar)
...
Comment
has_one :user
User
has_one_attached :avatar
您将如何预加载所有用户及其头像?
Comments.includes(users: :avatar)
产生以下错误:
ActiveRecord::AssociationNotFoundError(在用户上找不到名为“头像”的关联;也许你拼错了?)
执行时弹出同样的错误:
User.includes(:avatar)
【问题讨论】:
-
你这样做是为了一个用户列表?您还可以附上您填充此用户列表的位置吗?
-
@Nermin 添加。我想这就是你所要求的。
-
什么是
user.avatar,它与User有什么关系?从您的错误来看,它似乎不是一个关联。是属性吗? -
@JohanWentholt 我刚刚添加了更新。
标签: ruby-on-rails rails-activestorage ruby-on-rails-5.2