2013-05-20 32 views
0

我的導軌應用程序在localhost與所有js文件工作,但是當我在heroku生產運行,不加載任何js文件?Js文件不加載在與導軌的heroku生產3.2.11

配置/ application.rb中 config.cache_classes =真

# Full error reports are disabled and caching is turned on 
config.consider_all_requests_local  = false 
config.action_controller.perform_caching = true 

# Disable Rails's static asset server (Apache or nginx will already do this) 
config.serve_static_assets = false 

# Compress JavaScripts and CSS 
config.assets.compress = true 

# Don't fallback to assets pipeline if a precompiled asset is missed 
config.assets.compile = true 

# Generate digests for assets URLs 
config.assets.digest = true 

# Defaults to nil and saved in location specified by config.assets.prefix 
# config.assets.manifest = YOUR_PATH 

# Specifies the header that your server uses for sending files 
# config.action_dispatch.x_sendfile_header = "X-Sendfile" # for apache 
# config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for nginx 

# Force all access to the app over SSL, use Strict-Transport-Security, and use secure 
cookies. 
# config.force_ssl = true 

# See everything in the log (default is :info) 
# config.log_level = :debug 

# Prepend all log lines with the following tags 
# config.log_tags = [ :subdomain, :uuid ] 

# Use a different logger for distributed setups 
# config.logger = ActiveSupport::TaggedLogging.new(SyslogLogger.new) 

# Use a different cache store in production 
# config.cache_store = :mem_cache_store 

# Enable serving of images, stylesheets, and JavaScripts from an asset server 
# config.action_controller.asset_host = "http://assets.example.com" 

# Precompile additional assets (application.js, application.css, and all non-JS/CSS are 
already added) 
# config.assets.precompile += %w(search.js) 

# Disable delivery errors, bad email addresses will be ignored 
# config.action_mailer.raise_delivery_errors = false 

# Enable threaded mode 
# config.threadsafe! 

# Enable locale fallbacks for I18n (makes lookups for any locale fall back to 
# the I18n.default_locale when a translation can not be found) 
config.i18n.fallbacks = true 

config.assets.debug = false 
# Send deprecation notices to registered listeners 
config.active_support.deprecation = :notify 

配置/ enviornment.rb

config.whiny_nils = true 

# Show full error reports and disable caching 
config.consider_all_requests_local  = true 
config.action_controller.perform_caching = false 

# Don't care if the mailer can't send 
config.action_mailer.raise_delivery_errors = false 

# Print deprecation notices to the Rails logger 
config.active_support.deprecation = :log 

# Only use best-standards-support built into browsers 
config.action_dispatch.best_standards_support = :builtin 


# Do not compress assets 
config.assets.compress = false 

# Expands the lines which load the assets 
config.assets.debug = true 

application.rb中

config.assets.enabled = true 

的application.js

//= require jquery 

//= require jquery_ujs 

//= require jquery-ui 

//= require twitter/bootstrap 

//= require_tree . 

寶石文件

source 'https://rubygems.org' 

gem 'rails', '3.2.11' 
gem 'rest-client' , :require => 'rest_client' 
# Bundle edge Rails instead: 
# gem 'rails', :git => 'git://github.com/rails/rails.git' 
#gem 'twitter-bootstrap-rails' 
gem 'execjs' 
gem 'therubyracer' 
# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
gem "less-rails" 
gem 'sass-rails', '~> 3.2.3' 
gem 'coffee-rails', '~> 3.2.1' 
gem 'twitter-bootstrap-rails' 
# See https://github.com/sstephenson/execjs#readme for more supported runtimes 
# gem 'therubyracer', :platforms => :ruby 
gem 'uglifier', '>= 1.0.3' 

end 
gem "paperclip", "~> 3.0" 
gem 'jquery-rails' 

所以,當我在我的HTML頭標記在Heroku上運行包含

<head> 
<title>Admin70mmiq</title> 
<link type="text/css" rel="stylesheet" media="all" href="/assets/application- 
7bf1caf8d9df45f41b2e2de526e0a07e.css"> 

<script type="text/javascript" src="/assets/application- 
561ebefa444229c0b9721488348e73eb.js"> 
<meta name="csrf-param" content="authenticity_token"> 
<meta name="csrf-token" content="zadsH75r/3ZNXRTijXuw7LJDNAflL/9J3DzDZJG9yi4="> 
</head> 
+0

你解決了這個問題嗎? – Jean

回答

0

資產管道壓縮所有js文件放入一個名爲application.js的文件,這是visi在你的HTML作爲竹葉提取/assets/application-561ebefa444229c0b9721488348e73eb.js

+0

這裏的問題,我已經在我的html.erb文件中寫腳本,所以在運行應用程序後,當我點擊按鈕時,不會調用任何函數 – user2342350

+0

爲什麼不顯示HTML和js代碼? – 2013-05-20 08:38:12

+0

我的意思是我已經在show.html.erb中編寫了這樣的代碼 所以,當我點擊按鈕,這並不叫 – user2342350

0

喜budy請執行下列文件中的更改之前部署到Heroku的

------ ----- enviorment.rb

::ActiveSupport::Deprecation.silenced = true 

--- --- Production.rb -------如果任何新的JS和CSS創建

config.assets.compile = ['*.js', '*.css'] 
config.active_support.deprecation = :silence 

------- ------- application.rb中

config.assets.enabled = true 
config.assets.initialize_on_precompile = false 

我在部署heroku時使用這一步,確保你使用「postgres」數據庫和「瘦」服務器希望你解決了這個問題。 在GemFile Heroku中的兩個寶石:postgres,瘦我沒有看到你的GemFile這個寶石。

相關問題