如何禁用heroku上的资产编译?

bma*_*ets 4 assets heroku precompile asset-pipeline ruby-on-rails-4

我正在尝试使用这个turtorial将我的rails应用程序部署到heroku:

https://devcenter.heroku.com/articles/getting-started-with-rails4

所以,我使用rails 4.1.1和ruby 2.1.1

我的Gemfile gem 'rails_12factor', group: :production里面有.

我的application.rb:


require File.expand_path('../boot', __FILE__)

require 'rails/all'

Bundler.require(*Rails.groups)

module Charticus
  class Application  Rails::Application
    # Settings in config/environments/* take precedence over those specified here.
    # Application configuration should go into files in config/initializers
    # -- all .rb files in that directory are automatically loaded.

    # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
    # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
    # config.time_zone = 'Central Time (US & Canada)'

    # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
    # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
    # config.i18n.default_locale = :de
  end
end

Run Code Online (Sandbox Code Playgroud)

我创建了文件 public/assets/manifest.yml

但是当我将应用程序部署到heroku时 - 它将我的所有js文件文件编译为application.js和所有css文件application.css.而且我无法在app.heroku.com上使用firebug看到它.

我需要用我的配置来查看app.heroku.com上的所有js和css文件?如何在heroku上禁用资产预编译和缩小?

请帮帮我!谢谢

Saq*_* R. 8

LIB /任务/ assets.rake

Rake::Task["assets:precompile"].clear
   namespace :assets do
     task 'precompile' do
     puts "Not pre-compiling assets..."
   end
end
Run Code Online (Sandbox Code Playgroud)

你完成了.


bma*_*ets 3

我比较config/environments/development.rbconfig/environments/production.rb

并像development.rb 中那样进行 production.rb 资产配置:

评论这一行:

  • config.serve_static_assets = false
  • config.assets.js_compressor = :uglifier
  • config.assets.compile = false
  • config.assets.digest = true

然后:

  1. 将我的更改推送到 git repogit push origin master
  2. 将更改推送到 herokugit push heroku master