簡體   English   中英

Rails引擎的靜態資產未在主機應用程序中提供

[英]Rails engine's static assets not being served in host app

我正在研究Rails引擎。 該引擎在其public文件夾中包含一些靜態JS / CSS,我希望這些資產可以合並到宿主應用程序中並由其提供服務。

我把它添加到我的engine.rb文件中:

initializer "static assets" do |app|
  app.middleware.insert_before(::ActionDispatch::Static, ::ActionDispatch::Static, "#{root}/public")
end

有趣的是,當我在Rails引擎本身內運行虛擬應用程序時, 或者通過path將引擎安裝在我的文件系統上的單獨應用程序中:

gem 'my-engine', path: '~/my-engine`

一切正常。 但是,一旦我發布到RubyGems並通過其他應用程序安裝

gem 'my-engine'

靜態資產全部404。

關於如何診斷的任何想法? 在主機應用程序中還有什么我需要做的,以確保靜態資產被拉入+服務嗎? 它不是生產環境的東西,因為它甚至不能用於開發。

我忘了public我的.gemspec文件配置選項:

Gem::Specification.new do |s|
  ..
  s.files = Dir["{app,config,db,lib,public}/**/*", "MIT-LICENSE", "Rakefile", "README.rdoc"]

現在一切正常!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM