我将Heroku环境设置为暂存,但是我的 Assets 始终在生产环境中进行编译。
这是heroku config
:
GEM_PATH =>供应商/捆绑/ ruby /1.9.1
LANG => en_US.UTF-8
路径=> bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin
RACK_ENV =>登台
我在production.rb
文件中添加了一个异常(exception),因此我知道在编译 Assets 时它正在运行哪个env。服务器启动时运行良好,heroku run console
显示我正在运行暂存。
只是在运行assets:precompile
时,它才一直在生产中。
如果需要,我很乐意发布任何其他配置文件。
我可以添加一下,我在heroku上运行Rails 3.2.2和Cedar堆栈heroku run rake about
的输出:
关于您的应用程序的环境
Ruby版本1.9.2(x86_64-linux)
RubyGems版本1.3.7
机架版本1.4
Rails版本3.2.2
JavaScript运行时therubyracer(V8)
行动宝盒3.2.2版
主动支持版本3.2.2
中间件Rack::Cache,ActionDispatch::Static,Rack::Lock,#,Rack::Runtime,Rack::Auth::Basic,Rack::MethodOverride,ActionDispatch::RequestId,Rails::Rack::Logger,ActionDispatch::ShowExceptions,ActionDispatch::DebugExceptions,ActionDispatch::RemoteIp,ActionDispatch::Callbacks,ActionDispatch::Cookies,ActionDispatch::Session::CookieStore,ActionDispatch::Flash,ActionDispatch::ParamsParser,ActionDispatch::Head,Rack::: ConditionalGet,Rack::ETag,ActionDispatch::BestStandardsSupport
应用程序根目录/app
环境分期
运行heroku run rake assets:precompile
会给出:
/usr/local/bin/ruby/app/vendor/bundle/ruby/1.9.1/bin/rake asset:precompile:all RAILS_ENV = staging RAILS_GROUPS = assets
我应该放弃并发送电子邮件给Heroku吗?
最佳答案
显然,我需要enable a plugin使其起作用。
关于ruby-on-rails - Heroku始终运行 Assets :precompile with the production environment for Rails 3. 2,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9830244/