【发布时间】:2016-03-07 12:41:53
【问题描述】:
我的所有资产都不再随更改而更新。我使用与以前相同的设置,但现在当我更改任何“.html.erb”文件或“.scss”文件时,当我将它们添加到 git 并部署时它们不会显示他们与capistrano。知道这可能会发生什么吗?
也许我应该在要部署到的远程服务器上重新安装所有内容?
我正在使用:
Rails 4.2.5.1
红宝石2.2.3p173
生产.rb:
Rails.application.configure do
# Settings specified here will take precedence over those in config/application.rb.
# Code is not reloaded between requests.
config.cache_classes = true
# Eager load code on boot. This eager loads most of Rails and
# your application in memory, allowing both threaded web servers
# and those relying on copy on write to perform better.
# Rake tasks automatically ignore this option for performance.
config.eager_load = true
# Full error reports are disabled and caching is turned on.
config.consider_all_requests_local = false
config.action_controller.perform_caching = false
# Enable Rack::Cache to put a simple HTTP cache in front of your application
# Add `rack-cache` to your Gemfile before enabling this.
# For large-scale production use, consider using a caching reverse proxy like
# NGINX, varnish or squid.
# config.action_dispatch.rack_cache = true
# Disable serving static files from the `/public` folder by default since
# Apache or NGINX already handles this.
config.serve_static_files = ENV['RAILS_SERVE_STATIC_FILES'].present?
#config.serve_static_files = false
# Compress JavaScripts and CSS.
config.assets.js_compressor = :uglifier
#config.assets.css_compressor = :sass
# Do not fallback to assets pipeline if a precompiled asset is missed.
config.assets.compile = false
config.assets.initialize_on_precompile = false
# Asset digests allow you to set far-future HTTP expiration dates on all assets,
# yet still be able to expire them through the digest params.
config.assets.digest = true
end
我还使用RAILS_ENV=production rake asssets:precompile 在部署资产之前对其进行编译。
【问题讨论】:
-
尝试将 config.assets.compile 更改为 true 和 config.assets.precompile = [' .js', ' *.scss', '.css']跨度>
-
在 .js 和 .css 前需要一个星号,但由于某种原因堆栈没有读取这些。
标签: ruby-on-rails git capistrano asset-pipeline