2012-03-30 2 views
0

У меня есть приложение rails 3.0.9, которое я сейчас пытаюсь развернуть. Приложение отлично работает на моем dev-блоке (ruby 1.8.7 p352, mongrel), но производит следующую ошибку на коробке для производства (ruby 1.8.7 p334, Passenger).Rails 3 Production Nil Ошибка с javascript_include_tag

A ActionView::Template::Error occurred in site#index: 
can't convert nil into String 
vendor/bundle/ruby/1.8/gems/actionpack-3.0.9/lib/action_view/helpers/asset_tag_helper.rb:888:in `read' 

Трассировка стека является:

vendor/bundle/ruby/1.8/gems/actionpack-3.0.9/lib/action_view/helpers/asset_tag_helper.rb:888:in `read' 
vendor/bundle/ruby/1.8/gems/actionpack-3.0.9/lib/action_view/helpers/asset_tag_helper.rb:888:in `join_asset_file_contents' 
vendor/bundle/ruby/1.8/gems/actionpack-3.0.9/lib/action_view/helpers/asset_tag_helper.rb:888:in `collect' 
vendor/bundle/ruby/1.8/gems/actionpack-3.0.9/lib/action_view/helpers/asset_tag_helper.rb:888:in `join_asset_file_contents' 
vendor/bundle/ruby/1.8/gems/actionpack-3.0.9/lib/action_view/helpers/asset_tag_helper.rb:894:in `write_asset_file_contents' 
vendor/bundle/ruby/1.8/gems/activesupport-3.0.9/lib/active_support/core_ext/file/atomic.rb:20:in `atomic_write' 
vendor/bundle/ruby/1.8/gems/actionpack-3.0.9/lib/action_view/helpers/asset_tag_helper.rb:894:in `write_asset_file_contents' 
vendor/bundle/ruby/1.8/gems/actionpack-3.0.9/lib/action_view/helpers/asset_tag_helper.rb:356:in `javascript_include_tag' 
app/views/layouts/application.html.erb:79:in `_app_views_layouts_application_html_erb___689799961_85527100_0' 

Линия 79 из application.html.erb является:

<%= javascript_include_tag (Rails.env.development? ? "jquery.min.js" : "http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"), 
         "jquery-ui.min", 
         "application", :cache => true %> 

Я попытался удалить условную из javascript_include_Tag, но это не делает любая разница

ответ

0

Вы можете использовать опцию :cache=>true, если все аргументы a на самом деле файлы на вашем сервере - рельсы не будут отправляться и загружать jquery из googleapis для вас (и это скорее победит, если это так)

Включите jquery.min.js в свой собственный javascript_include_tag, без :cache, и все должно быть в порядке. В качестве альтернативы вы можете перестать пытаться загрузить jquery из googleapis.

+0

Спасибо, что сделал трюк, наиболее ценный – user1302719

Смежные вопросы