1

我有一个 Rails 引擎和 Rails 应用程序,都运行 Rails 6.0.0.rc1。

引擎定义带有 ActiveStorage 附件的模型,例如。

module Shop
  class Product < ApplicationRecord
    ...

    has_one_attached :image
    has_many_attached :images
  end
end

在引擎和应用程序视图中使用此模型并尝试调用= url_for(product.image)会引发异常undefined method 'attachment_path' for #<#<Class:XXX>:XXX>product.image.attached?返回 true,因此附件可用。

这段代码是从 Rails 应用程序中提取的,它工作得很好。是否有用于 Rails Engine 模型附件的特殊路由助手或rails active_storage:install文档中未提及的其他设置?

4

2 回答 2

7

我得到这个工作使用main_app.url_for(product.image)

适用于引擎视图和主要 Rails 应用程序视图。

于 2019-07-18T17:58:45.280 回答
1

作为其他人的参考,您可以在 Rails 指南中阅读更多相关信息。

于 2020-02-06T20:24:35.527 回答