J'essaie de mettre à niveau mon application des rails 3.1.3 aux rails 3.2.1 et j'ai un problème avec des actifs.
J'ai ce genre d'erreur: p>
Started GET "/assets/application.js" for 127.0.0.1 at 2012-02-06 17:04:38 -0500 Served asset /application.js - 404 Not Found (1ms) ActionController::RoutingError (No route matches [GET] "/assets/application.js"): actionpack (3.2.1) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call' actionpack (3.2.1) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call' railties (3.2.1) lib/rails/rack/logger.rb:26:in `call_app' railties (3.2.1) lib/rails/rack/logger.rb:16:in `call' actionpack (3.2.1) lib/action_dispatch/middleware/request_id.rb:22:in `call' rack (1.4.1) lib/rack/methodoverride.rb:21:in `call' rack (1.4.1) lib/rack/runtime.rb:17:in `call' activesupport (3.2.1) lib/active_support/cache/strategy/local_cache.rb:72:in `call' rack (1.4.1) lib/rack/lock.rb:15:in `call' actionpack (3.2.1) lib/action_dispatch/middleware/static.rb:53:in `call' railties (3.2.1) lib/rails/engine.rb:479:in `call' railties (3.2.1) lib/rails/application.rb:220:in `call' rack (1.4.1) lib/rack/content_length.rb:14:in `call' railties (3.2.1) lib/rails/rack/log_tailer.rb:14:in `call' rack (1.4.1) lib/rack/handler/webrick.rb:59:in `service' /usr/lib/ruby/1.9.1/webrick/httpserver.rb:111:in `service' /usr/lib/ruby/1.9.1/webrick/httpserver.rb:70:in `run' /usr/lib/ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'
5 Réponses :
J'ai rencontré quelque chose de similaire plus tôt. Comment les référencez-vous? Est-ce un échec de l'échec de l'image_tag ou de la référence CSS? P>
Si votre fichier est ici ici à partir d'un fichier html.erb: à partir d'un fichier SCSS: http://guides.rubyonRails.org/asset_pipeline.html# codage-links-to-actifs p> /app/assets/images/logos/opera_logo.png code> puis les références suivantes doivent fonctionner. p>
<% = image_tag ('logos / opéra_logo.png')%> code> p> p>
arrière-plan: URL (image_path ("logos / opéra_logo.png")) code> p>
Essayez d'ajouter ceci à votre gemfile et redémarrez le serveur, conformément à: http://guides.rubyonrails.org/asset_pipeline.html#upgrading-de-old-fersions-of-Rails
# 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" gem 'uglifier' end
Apparemment, une dépendance GEM est cassée et autre que cela, Les problèmes similaires sont également apparus auparavant et la réponse consistait à mettre à jour tout votre gemise, principalement des pignons et des rails. Vos fichiers de configuration vont bien pour moi et je ne peux pas reproduire l'erreur. P>
Si cela n'aidait pas, je créerais une nouvelle application Rails, vérifiez que le pipeline d'actifs y travaille avec le même gemise que vous avez et vérifiez manuellement tous les fichiers de configuration. P>
Il existe également divers outils de débogage pour le routage, mais essayez d'abord ce qui précède. P> Bundle Exec Rails Server code> devrait résoudre ce problème. Cela devrait être exécuté sans sudo ... code> sauf si vous travaillez habituellement avec votre application avec des privilèges root (ce qui n'est pas bon). Vérifiez les autorisations de fichiers / dossiers dans votre racine de votre rails, qui aurait pu être brisée en préjuant des commandes sudo code> plus tôt. En développement, vous n'avez guère besoin de privilèges root. P>
J'ai installé un nouveau gemset, avec RVM, et ça marche! Merci beaucoup.
J'ai démarré Server Server avec Bundle Exec Rails s code> et ça marche. La tâche de Strage à propos de cette erreur est que les autres actifs (Javascripts, stylesheets) fonctionnent bien avec Rails S code> mais des images ne le font pas.
@Giovanni vous donnez trop peu de détails pour comprendre. Veuillez commencer une nouvelle question expliquant votre situation. Assurez-vous d'inclure votre Gemfile Code> et des appels vers Images Actifs qui ne fonctionnent pas et des messages d'erreur complets.
Je frappe un problème similaire que j'ai résolu en supprimant le active_reload code> gem. p>
Cela le corrigé pour moi. Merci!
Il s'agit d'un problème pour les rails <3,2 projets allant à 3,2+ ... La page d'accueil du projet indique actif_reload code> est incompatible avec les rails 3.2 en avance.
Après quelques heures de recherche - j'ai été trouvé. Merci beaucoup!
Nouveau sur Rails, mais pour mes images situées dans le répertoire Même si c'est dans le dossier Images, avec des rails 3.2.6 (version que j'utilise), vous ne mettez pas la partie Images du répertoire. P> ../ app / actifs / images code> par exemple "rails.png"
La référence CSS appropriée pour une image d'arrière-plan est la suivante: arrière-plan: URL blanc (rails.png) Répétition-y; code> (options affichées) p>
Vous dites que l'actif est dans
app / actifs / images code>, mais vous appelez l'image à partir de l'application/ actifs / logos code>Désolé, c'est mon erreur. Mon fichier est ici: App / Actifs / Images / Logos / Opera_Logo.png. J'ai édité mon post.
Je me demande si l'édition d'un message a changé le message RoutingError. Selon votre journal au-dessus de l'image, vous vous référez de ne pas figurer dans le dossier
actifs / images code>, mais dansactifs / logos code>. Modifiez l'emplacement de votre fichier àactifs / logos CODE> ou mieux trouvez le lien de référence et modifiez-le en correspondanceactifs / images / opéra_logo.png code>Si ce qui précède ne vous aidera pas, vérifiez la génération des actifs en essayant, par exemple
http: // localhost: 3000 / actifs / applications.css code>. Vous verrez si vos styles ont été générés sous le dossier code> code>. S'ils n'étaient pas, vérifiez si les actifs pipeline sont activés.Désolé, j'ai choisi le mauvais exemple. C'est la même chose avec Application.css qui est localisée à cet endroit App / Actifs / StylesSheets / Application.css. J'ai cette erreur: ActionController :: routingError (aucun itinéraire correspondant [get] "/assets/application.css")
Voulez-vous montrer le contenu de votre fichier gemfile et votre fichier de développement.rb (en supposant que vous exécutez votre code en mode DEV)?
Je modifie mon message pour ajouter gemfile, développement.rb et application.rb
Je modifie mon message pour mettre un meilleur exemple.