在Rails Active Storage中,可以通过url
方法为存储的图像生成URL。以下是如何附加图像的步骤:
config/storage.yml
文件中设置存储适配器,例如:local:
service: Disk
root: <%= Rails.root.join("storage") %>
Post
模型:class Post < ApplicationRecord
has_one_attached :image
end
post = Post.new
post.image.attach(io: File.open("path/to/your/image.jpg"), filename: "image.jpg", content_type: "image/jpeg")
post.save!
url
方法获取已附加的图像的URL:post = Post.last
image_url = post.image.url
image_url
变量现在包含图像的完整URL。你可以将其用于<img>
标签中,以在Rails视图中显示图像:
<%= image_tag post.image.url %>
如果需要生成具有不同样式或版本的图像,可以使用variant
方法:
thumbnail_url = post.image.variant(resize_to_limit: [100, 100]).url
这将生成一个缩略图版本的图像URL。
领取专属 10元无门槛券
手把手带您无忧上云