【发布时间】:2019-04-01 03:41:53
【问题描述】:
我正在尝试将相同的活动存储映像附加到两个不同的模型,原因是,我不希望存储文件的两个副本,并且我想优化数据库查询,以便我可以查询“活动”显示图像,而不必同时查询活动和帖子。 图像附加,但是当我使用 command.attach 时?它为活动返回 false。但是当我做@activity.image时它显示它有一个图像
使用 Active Storage,这是我的代码
@post.image.attach(io: File.open(image_file), filename: file_name)
@activity.image.attach(@post.image)
在控制台中:
>@post.image.attached?
=> **true**
>@post.image
=> #<ActiveStorage::Attached::One:0x000055d2dd844aa8 @name="image", @record=...
>@activity.image
=> #<ActiveStorage::Attached::One:0x000055d2dd8529f0 @name="image", @record=...
>@activity.image.attached?
=> **false**
在视图中:
<%= image_tag @post.image %> **IMAGE SHOWS UP**
<%= image_tag @activity.image %> **NO IMAGE**
【问题讨论】:
-
尝试以与发布相同的方式将图像附加到活动
-
检查我的答案。也让我知道确切的情况。
@post会不会有一张图片,并且在活动中可能会引用相同的图片?@activity会有来自帖子的图片和它自己的图片吗?。
标签: ruby-on-rails rails-activestorage