我有一个应用程序,其中我使用多租户和活动存储。然而,当我试图检索图像URL时,我遇到了一个问题。似乎所有的东西都正确地插入到特定公司的基础上,但当试图查看图像时,这个错误发生在我身上。
以下是C1模式数据库中记录的图像:
我甚至还单独创建了一个没有租户的应用来测试主动存储,也能用,只是在那个应用上,我使用的租户不能用。
# GET /api/v1/products/:id
def show
if @product.image.attached?
render json: url_for(@product.image), status: :ok
end
end
使用邮递员,添加浏览器 http:/localhost......但没有找到。
class Product < ApplicationRecord
belongs_to :package
has_one_attached :image
validates :name, presence: true
end
这是控制器中的params
def product_params
params.require(:product).permit(:id, :name, :sequence, :address, :ean, :package_id,
:integration_id, :image)
end
Rails使用job来分析图像。有一些情况下,图像应该是存在的,但工作还没有完成。你应该在上传被提交时请求图片。
当upload方法返回url时,应该就可以了。
也许你需要在返回之前重新加载模型。
url_for(@product.image.reload)