Heroku “Nous sommes désolés, mais quelque chose s'est mal passé.” en raison de javascript_include_tag
Le chargement de mon ruby on rails application pour heroku provoque l'erreur suivante:
Nous sommes désolés, mais quelque chose s'est mal passé.
Cela ne se produit pas sur ma machine locale.
Après un peu de débogage, je crois que j'ai repéré l'erreur, mais ne savez pas comment le résoudre.
Dans mon fichier de l'application.html.erb, suppression de la ligne suivante permet de résoudre le problème, mais ensuite, mon appli perd de son thème jquery mobile. Les idées de ce que je pourrais faire pour résoudre le problème?
Ligne à l'origine du problème:
<%= javascript_include_tag "application" %>
application.html.erb fichier:
<!DOCTYPE html>
<html>
<head>
<title>Washapp</title>
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
<%= javascript_include_tag "application" %>
<script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
<%= csrf_meta_tags %>
<script>
if (window.location.hash == "#_=_")
window.location.hash = "";
</script>
</head>
<body>
<div data-role="page">
<%= yield %>
</div>
</body>
</html>
Heroku journaux:
2012-04-08T23:28:41+00:00 heroku[nginx]: 78.105.51.57 - - [08/Apr/2012:23:28:41 +0000] "GET /HTTP/1.1" 500 643 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.151 Safari/535.19" washappdelete2.heroku.com
2012-04-08T23:28:43+00:00 app[web.1]:
2012-04-08T23:28:43+00:00 app[web.1]: Started GET "/" for 78.105.51.57 at 2012-04-08 16:28:43 -0700
2012-04-08T23:28:43+00:00 app[web.1]:
2012-04-08T23:28:43+00:00 app[web.1]: Processing by HomeController#index as HTML
2012-04-08T23:28:43+00:00 app[web.1]: Rendered home/routa_list.html.erb within layouts/application (0.1ms)
2012-04-08T23:28:43+00:00 app[web.1]: Completed 500 Internal Server Error in 34ms
2012-04-08T23:28:43+00:00 app[web.1]:
2012-04-08T23:28:43+00:00 app[web.1]: 4: <title>Washapp</title>
2012-04-08T23:28:43+00:00 app[web.1]: ActionView::Template::Error (application.js isn't precompiled):
2012-04-08T23:28:43+00:00 app[web.1]: 5: <meta name="viewport" content="width=device-width">
2012-04-08T23:28:43+00:00 app[web.1]: 6: <link href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
2012-04-08T23:28:43+00:00 app[web.1]: 7: <%= javascript_include_tag "application" %>
2012-04-08T23:28:43+00:00 app[web.1]: 9: <script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
2012-04-08T23:28:43+00:00 app[web.1]: 8:
2012-04-08T23:28:43+00:00 app[web.1]: 10: <%= csrf_meta_tags %>
2012-04-08T23:28:43+00:00 app[web.1]: app/views/layouts/application.html.erb:7:in `_app_views_layouts_application_html_erb__2373145142857118006_42724320'
2012-04-08T23:28:43+00:00 app[web.1]: app/controllers/home_controller.rb:4:in `index'
2012-04-08T23:28:43+00:00 app[web.1]: cache: [GET /] miss
2012-04-08T23:28:43+00:00 app[web.1]:
2012-04-08T23:28:43+00:00 app[web.1]:
app/assets/javascripts/application.js
//This is a manifest file that'll be compiled into application.js, which will include all the files
//listed below.
//
//Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
//or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
//
//It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
//the compiled file.
//
//WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
//GO AFTER THE REQUIRES BELOW.
//
//= require jquery
//= require jquery_ujs
//= require_tree .
Référentiel:
https://github.com/karangb/herokuProblem
Je suis en cours d'exécution Rails 3.2.2
Yup c'est à faire avec vos actifs de la compilation. Lire le lien que j'ai posté.
Aussi
heroku logs
peut être utile si vous n'étiez pas au courant de çatu veux dire app/assets/javascripts/application.js? ive vient de mettre à jour mon post avec elle
OriginalL'auteur Karan | 2012-04-08
Vous devez vous connecter pour publier un commentaire.
Problème résolu!
Il était simple - pris de 500 erreur interne au serveur lorsque j'essaie de faire mon application sur Heroku
ouais, malheureusement. Passé des heures sur elle - souhaitez heroku journaux étaient mieux. Merci beaucoup tho. Soutien disponible ici m'encourage à continuer! 🙂
Yay, a sauvé la journée, Karan! Fallait juste changer le url dans le
.git/config
dans le [remote "heroku"] de la section avant de réexécutergit push heroku master
etheroku run rake db:migrate
...OriginalL'auteur Karan
Dans config/application.rb, ajouter
et push git, puis push heroku.
OriginalL'auteur Thaha kp
Essayez d'ajouter
//= require jquery.mobile
dans votre
app/assets/stylesheets/application.js
amd ensemble
config.assets.compile = tue
dans votre
config/enviroments/production.rb
si cela ne fonctionne pas, veuillez également ajouter le nom des fichiers et des dossiers dans
app/assets
à votre questionEn fait, vous pourriez avoir à utiliser la gem "jquery-mobile-rails" pour avoir ce travail.
cela ne fonctionne pas ... je vais ajouter de la gemme (btw, j'ai pas Pu trouver un runtime Javascript dans mon heroku journal ...) . je mettrai à jour après que j'ai ajouter la gemme
l'ajout de la gemme n'a pas de travail ... dois-je modifier l'application.html.erb fichier après l'ajout de la gemme?
OriginalL'auteur benjgorman
Essayez de le définir dans le fichier config/environnements/production.rb la ligne suivante à faux:
Quel est le contenu de votre application.js fichier?
//= require jquery //= nécessitent jquery_ujs //= require_tree .
peut-être vous avez besoin de télécharger le jquery.mobile-1.0.1.min.js à votre actif/javascripts ... alors il serait précompilés? Essayez de ne pas faire référence à l'extérieur (mais c'est juste une supposition...)
J'ai ajouté mon code source de github. Notez que les derniers commentaires sont terribles! github.com/karangb/herokuProblem
OriginalL'auteur Mark
Si vous avez quelque chose comme comme java dans
app/assets
, ce sera de jeter les pignons off. En le nommant à quelque chose comme applets au lieu va permettre au contenu dejavascripts
répertoire à être compilé. SourceOriginalL'auteur Jonathan
Êtes-vous également la mise en
C'est une nouvelle variation sur les Rails 3.2 (voir la Docs)
Néanmoins, vous devriez être en mesure de voir une erreur lors de la chute de la compilation (comme dans l'exemple ci-dessous, si vous ne définissez pas la au-dessus de drapeau)
Vous pouvez également essayer d'exécuter le râteau précompiler tâche localement, et de voir l'erreur (encore une fois, comme la documentation suggère).
vous n'avez donc essayer
rake assets:precompile
pour voir si vous obtenez le problème localement?OriginalL'auteur
assurez-vous il n'y a pas non chaînée des fichiers de
git status
peut-être essayer,
heroku run rake db:migrate
OriginalL'auteur Bruno