0

When I precompile locally everything works, but when I push to heroku (Cedar) the javascript stops working.

Here is my gemfile:

source :rubygems

ruby '1.9.2'

# Rails 3.2.11 requires rack ~> 1.4.0.
gem 'rack',    '~> 1.4.4'
gem 'rails',   ' = 3.2.11'
gem 'rake',    '>= 10.0.3'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

group :development, :test do
  gem 'sqlite3'
    gem 'taps', :require => false
    gem 'better_errors'
  gem 'binding_of_caller'   
end

group :production do
  gem "pg"
  gem 'therubyracer'
end

gem 'activeadmin'
gem 'thinking-sphinx'
gem 'flying-sphinx'

# Temporarily commented out 1.0.5:
# gem 'active_admin_editor', ' = 1.0.5'
gem 'active_admin_editor', ' = 1.0.4'

gem 'execjs'


gem "aws-s3", :require => 'aws/s3'
gem "paperclip", "~> 3.0"
gem 'aws-sdk'
gem "friendly_id", "~> 4.0.9"
gem 'gmaps4rails'
gem "geocoder", "~> 1.1.5"

gem 'will_paginate', '~> 3.0'
gem 'bootstrap-sass', '~> 2.2.2.0'
gem "cancan"    
gem "truncate_html"
gem 'unicorn'
gem 'delayed_job_active_record'
gem 'delayed_paperclip'
gem 'rubyzoho'
gem 'filepicker-rails', :git => 'git://github.com/Filepicker/filepicker-rails.git'
gem 'spreedly-core-ruby', :git => 'git://github.com/spreedly/spreedly-core-ruby.git'
gem 'delayed_job_active_record'
gem 'exception_notification-rake', '~> 0.0.5'

# gem 'authorize-net'


# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer', :platforms => :ruby

  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'
gem 'jquery-ui-rails'
gem 'annotate', ">=2.5.0"
gem 'formtastic'
gem 'client_side_validations'
gem 'client_side_validations-formtastic'
gem 'gibbon'
gem 'carrierwave'
gem 'fog'
gem 'mini_magick'
gem 'browser'
gem 'newrelic_rpm'
gem 'heroku-deflater', :group => :production
gem 'roo'
gem 'acts-as-taggable-on'
gem 'databasedotcom'
gem'uuidtools'
gem'ngmin-rails'
gem 'angularjs-rails'



# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'debugger'

Here is my application javascript file:

//= require jquery
//= require jquery_ujs
//= require jquery-ui
// Loads all Bootstrap javascripts
//= require bootstrap
//= require angular
//= require angular-resource
//= require angular-route
//= require angular-animate
//= require rails.validations
//= require rails.validations.formtastic
//= require app/app
//= require livevalidation  
//= require_tree .

Here is what loads in the head of my document when on heroku:

<link href="/assets/gmaps4rails-21868da9e318c70c44d69e78543ee201.css" media="screen" rel="stylesheet" type="text/css" />
<script src="/assets/application-fb6a31ade8f43abb051305338b5c7fd5.js" type="text/javascript"></script>
<link href="/assets/bootstrap-ff0da060dd3f7263bb8759a881069640.css" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/layout-de92fc70808f180a60c7316d093be53b.css" media="all" rel="stylesheet" type="text/css" />
<meta content="authenticity_token" name="csrf-param" />
<meta content="jBJD08zMuOAMWmmsqkKRiVla59FK4tcj9QPJGboFZyU=" name="csrf-token" />
<!-- Google Fonts -->
<link href='https://fonts.googleapis.com/css?family=Open+Sans:book,400,600,700' rel='stylesheet' type='text/css'>
<link href="/assets/gmaps4rails-21868da9e318c70c44d69e78543ee201.css" media="screen" rel="stylesheet" type="text/css" />

<link href="/assets/mapsheet-f210c3ae75caf6a4c98beaf945d7f29b.css" media="screen" rel="stylesheet" type="text/css" />
<script src="/assets/jquery.jic-87eaff6bdf4669aef4afc9268ce14698.js" type="text/javascript"></script>

When I am local I get a lot more files:

<link href="/assets/gmaps4rails.css?body=1" media="screen" rel="stylesheet" type="text/css" />          
<script src="/assets/jquery.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery-ui.js?body=1" type="text/javascript"></script>
<script src="/assets/bootstrap.js?body=1" type="text/javascript"></script>
<script src="/assets/angular.js?body=1" type="text/javascript"></script>
<script src="/assets/angular-resource.js?body=1" type="text/javascript"></script>
<script src="/assets/angular-route.js?body=1" type="text/javascript"></script>
<script src="/assets/angular-animate.js?body=1" type="text/javascript"></script>
<script src="/assets/rails.validations.js?body=1" type="text/javascript"></script>
<script src="/assets/rails.validations.formtastic.js?body=1" type="text/javascript"></script>
<script src="/assets/app/app.js?body=1" type="text/javascript"></script>
<script src="/assets/livevalidation.js?body=1" type="text/javascript"></script>
<script src="/assets/XRegExp.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/lib/namespace.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/components/jquery.aa.checkbox-toggler.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/components/jquery.aa.dropdown-menu.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/components/jquery.aa.popover.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/components/jquery.aa.table-checkbox-toggler.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/pages/application.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/pages/batch_actions.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/application.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin/base.js?body=1" type="text/javascript"></script>
<script src="/assets/active_admin.js?body=1" type="text/javascript"></script>
<script src="/assets/answer.js?body=1" type="text/javascript"></script>
<script src="/assets/articles.js?body=1" type="text/javascript"></script>
<script src="/assets/bad_transactions.js?body=1" type="text/javascript"></script>
<script src="/assets/bootstrap-datepicker.js?body=1" type="text/javascript"></script>
<script src="/assets/campaigns.js?body=1" type="text/javascript"></script>
<script src="/assets/card_orders.js?body=1" type="text/javascript"></script>
<script src="/assets/categories.js?body=1" type="text/javascript"></script>
<script src="/assets/churches.js?body=1" type="text/javascript"></script>
<script src="/assets/contacts.js?body=1" type="text/javascript"></script>
<script src="/assets/contributors.js?body=1" type="text/javascript"></script>
<script src="/assets/creditcard_resets.js?body=1" type="text/javascript"></script>
<script src="/assets/designs.js?body=1" type="text/javascript"></script>
<script src="/assets/fails.js?body=1" type="text/javascript"></script>
<script src="/assets/gallery.js?body=1" type="text/javascript"></script>
<script src="/assets/gmaps4rails/gmaps4rails.base.js?body=1" type="text/javascript"></script>
<script src="/assets/gmaps4rails/gmaps4rails.bing.js?body=1" type="text/javascript"></script>
<script src="/assets/gmaps4rails/gmaps4rails.googlemaps.js?body=1" type="text/javascript"></script>
<script src="/assets/gmaps4rails/gmaps4rails.mapquest.js?body=1" type="text/javascript"></script>
<script src="/assets/gmaps4rails/gmaps4rails.openlayers.js?body=1" type="text/javascript"></script>
<script src="/assets/good_transactions.js?body=1" type="text/javascript"></script>
<script src="/assets/guides.js?body=1" type="text/javascript"></script>
<script src="/assets/invoices.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.ajslideshow.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.jic.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.sh-image-select-dropdown.min.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.sh-image-select.all.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.sh-image-select.all.min.js?body=1" type="text/javascript"></script>
<script src="/assets/jquery.sh-image-select.min.js?body=1" type="text/javascript"></script>
<script src="/assets/launchdates.js?body=1" type="text/javascript"></script>
<script src="/assets/letters.js?body=1" type="text/javascript"></script>
<script src="/assets/locations.js?body=1" type="text/javascript"></script>
<script src="/assets/main.js?body=1" type="text/javascript"></script>
<script src="/assets/order.js?body=1" type="text/javascript"></script>
<script src="/assets/orders.js?body=1" type="text/javascript"></script>
<script src="/assets/packs.js?body=1" type="text/javascript"></script>
<script src="/assets/partners.js?body=1" type="text/javascript"></script>
<script src="/assets/pastors.js?body=1" type="text/javascript"></script>
<script src="/assets/payment_methods.js?body=1" type="text/javascript"></script>
<script src="/assets/payments.js?body=1" type="text/javascript"></script>
<script src="/assets/photos.js?body=1" type="text/javascript"></script>
<script src="/assets/plugins.js?body=1" type="text/javascript"></script>
<script src="/assets/posts.js?body=1" type="text/javascript"></script>
<script src="/assets/referrals.js?body=1" type="text/javascript"></script>
<script src="/assets/sermons.js?body=1" type="text/javascript"></script>
<script src="/assets/shAutoloader.js?body=1" type="text/javascript"></script>
<script src="/assets/shBrushCss.js?body=1" type="text/javascript"></script>
<script src="/assets/shBrushJScript.js?body=1" type="text/javascript"></script>
<script src="/assets/shBrushPlain.js?body=1" type="text/javascript"></script>
<script src="/assets/shBrushXml.js?body=1" type="text/javascript"></script>
<script src="/assets/shCore.js?body=1" type="text/javascript"></script>
<script src="/assets/shLegacy.js?body=1" type="text/javascript"></script>
<script src="/assets/staffs.js?body=1" type="text/javascript"></script>
<script src="/assets/subscribers.js?body=1" type="text/javascript"></script>
<script src="/assets/tickets.js?body=1" type="text/javascript"></script>
<script src="/assets/ui-bootstrap.min.js?body=1" type="text/javascript"></script>
<script src="/assets/vendor/modernizr-2.6.1.min.js?body=1" type="text/javascript"></script>
<script src="/assets/videos.js?body=1" type="text/javascript"></script>
<script src="/assets/application.js?body=1" type="text/javascript"></script>

        <link href="/assets/bootstrap.css?body=1" media="all" rel="stylesheet" type="text/css" />
<link href="/assets/layout.css?body=1" media="all" rel="stylesheet" type="text/css" />


        <link href="/assets/datepicker.css?body=1" media="screen" rel="stylesheet" type="text/css" />
        <meta content="authenticity_token" name="csrf-param" />
<meta content="lWshwSuugMoiehYmuKQLjRmz5Y45950G1B6Ga+HPGkE=" name="csrf-token" />
        <!-- Google Fonts -->
        <link href='https://fonts.googleapis.com/css?family=Open+Sans:book,400,600,700' rel='stylesheet' type='text/css'>


        <link href="/assets/mapsheet.css?body=1" media="screen" rel="stylesheet" type="text/css" />
        <script src="//api.filepicker.io/v1/filepicker.js" type="text/javascript"></script>
        <link href="/feed" rel="alternate" title="ATOM" type="application/atom+xml" />
        <link href="/feed.rss" rel="alternate" title="RSS" type="application/rss+xml" />

I have tried solution after solution with no result, have been stuck on this for a long time now so any help would be amazing!

Aaron Mills
  • 172
  • 1
  • 14

1 Answers1

0

I see you have a assets/application.js in your production environment, but my guess is that you are not updating your this pre-compiled the assets, did you check you production.rb ?

config.assets.compile = true

Other ideas in this post. You should also be able to pre-compile your assets locally using the following command :

RAILS_ENV=production bundle exec rake assets:precompile

More details in this help page from Heroku..

Community
  • 1
  • 1
Percevalve
  • 131
  • 1
  • 2