Ich arbeite an einer Rails-Engine. Die Engine enthält einige statische JS/CSS-Dateien in ihrem Ordner public
, und ich möchte, dass diese Assets in die Hostanwendung integriert und von dieser bereitgestellt werden.Die statischen Ressourcen der Rails-Engine werden in der Host-App nicht bedient
Ich habe diese auf meine engine.rb
Datei:
initializer "static assets" do |app|
app.middleware.insert_before(::ActionDispatch::Static, ::ActionDispatch::Static, "#{root}/public")
end
Interessant ist, wenn ich die Dummy-App innerhalb des Rails-Engine laufen selbst, oder den Motor in einer separaten App auf meinem Dateisystem über path
installieren:
gem 'my-engine', path: '~/my-engine`
alles funktioniert. Aber sobald ich zu RubyGems veröffentlichen und über
gem 'my-engine'
die statischen Vermögenswerte all 404.
Alle Ideen, wie die Diagnose in einer anderen App installieren? Gibt es noch etwas, was ich in der Host-App tun muss, um sicherzustellen, dass die statischen Assets übernommen und bedient werden? Es ist keine Sache der Produktionsumgebung, weil es nicht einmal in der Entwicklung funktioniert.
Welche Version von Schienen war das? Schienen 4? –