gpt4 book ai didi

ruby-on-rails - 主机应用程序中未提供 Rails 引擎的静态 Assets

转载 作者:行者123 更新时间:2023-12-04 20:02:56 24 4
gpt4 key购买 nike

我正在研究 Rails 引擎。该引擎在其 public 中包含一些静态 JS/CSS文件夹,我希望将这些 Assets 合并到主机应用程序中并由其提供服务。

我将此添加到我的 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'

静态 Assets 全部为 404。

关于如何诊断的任何想法?在主机应用程序中我还需要做些什么来确保静态 Assets 被拉入+被提供?它不是生产环境的东西,因为它甚至在开发中不起作用。

最佳答案

我忘了 public到我的 .gemspec 中的文件配置选项:

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

现在一切正常!

关于ruby-on-rails - 主机应用程序中未提供 Rails 引擎的静态 Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28127933/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com