我有一些非標準資產(即文件不是圖像/ JavaScript文件/樣式表,如json和二進制文件),它們位於可安裝的引擎中(不包含isolate_namespace
)在app/assets/data
。我希望這些是資產管道的一部分(與圖像相同)。 我可以將它們添加到資產路徑集合中,例如安裝引擎中的非標準資產的導軌路徑
class Engine < ::Rails::Engine
config.after_initialize do
Rails.application.config.assets.paths << root.join("app", "assets", "data")
end
end
,我可以在Rails的控制檯,該資產對資產管道(例如,通過Rails.application.assets[]
和ActionController::Base.helpers.asset_path
)可見見。例如,對於一個文件app/assets/data/foo.json
的asset_path
助手在軌控制檯託管的應用程序給我一個路徑assets/foo.json
,但是這條道路行不通,我得到一個
ActionController::RoutingError (No route matches [GET] "/assets/foo.json")
錯誤。
如何獲取託管Rails應用程序來提供這些文件?