[RUBY] L'image n'est pas affichée dans l'environnement de production

J'avais des problèmes car l'image n'était pas affichée après le déploiement, alors je l'ai résumée.

J'espère que cela aide quelqu'un.

ruby '2.6.5' rails '6.0.0'

Je fais une demande originale.

L'environnement de production utilise Heroku. Après le déploiement sur Heroku et la vérification de l'opération, un journal des erreurs est apparu.

12.png

Je pensais que la cause était que le chemin d'accès à l'image avait changé depuis le journal des erreurs dans l'environnement de production.

S'il est local, il sera affiché tel quel si vous le placez directement sous assets / images / Dans l'environnement de production, une erreur s'est produite car elle était précompilée et non affichée.

Quand je regarde En `production, Rails place les fichiers précompilés dans public / assets. Le fichier précompilé est traité comme un actif statique par le serveur Web. Les fichiers placés dans l'application / les actifs ne sont jamais utilisés tels quels dans un environnement de production. ''

Cliquez ici pour les articles de référence

Créez un chemin pour l'environnement de production en vous référant à l'article ci-dessus.

_medicine.html.erb



   <%= image_tag asset_path('medicine3.jpeg'), class:"med-pic" %>

J'ai reprécifié le chemin de cette manière, mais dans mon cas, j'ai de nouveau une erreur.

Veuillez noter que les paramètres de précompilation de l'actif dans l'environnement de production n'ont peut-être pas été définis.

Changer avant

production.rb


     config.assets.compile = false

Après le changement

production.rb


     config.assets.compile = true

Lorsque j'ai activé cela, j'ai pu afficher l'image en toute sécurité.

Résumé

`<< Pour les débutants >> Si l'image n'est pas affichée dans l'environnement de production, il n'y a aucune perte à l'essayer.

① Vérifiez si le paramètre de précompilation de l'actif dans l'environnement de production est valide

29


   config.assets.compile = true

(2) Créer un fichier d'actifs en public en précompilant

   % rails assets:precompile

③ Décrivez assets_path

   <%= image_tag asset_path('medicine3.jpeg'), class:"med-pic" %>

④ Le déploiement est terminé et l'affichage de l'image est terminé! !!

Il vaut peut-être mieux jeter un coup d'œil à ce que fait la précompilation des ressources!

Recommended Posts

L'image n'est pas affichée dans l'environnement de production
[Erreur] L'application ne s'affiche pas dans l'environnement de production
[Rails] À propos de l'erreur selon laquelle l'image n'est pas affichée dans l'environnement de production
Lorsque le projet n'est pas affiché dans eclipse
[Rails] fields_for n'est pas affiché
Créer une base de données dans un environnement de production
Les données ne sont pas enregistrées dans Rails.
À propos du problème selon lequel l'image n'est pas affichée après le déploiement AWS
[Rails] Réinitialisez la base de données dans l'environnement de production
[Cloud9] Yay! You are on Rails! N'est pas affiché dans le didacticiel sur les rails
tutoriel rails À propos de l'activation de compte dans l'environnement de production
Le message d'erreur du périphérique ne s'affiche pas correctement.
La solution pour NetBeans 8.2 ne fonctionne pas dans l'environnement Java 9
Lorsque nginx conf n'est pas bien reflété dans l'environnement AWS Elastic Beanstalk + Rails
Une erreur de serveur interne 500 se produit dans l'environnement de production Rails
[Java] Quelque chose est affiché comme "-0.0" dans la sortie
Ebean.update () n'est pas exécuté dans le modèle hérité.
J'obtiens Mysql2 :: Error :: ConnectionError dans l'environnement de production
Hivernate Validator ne fonctionne pas dans l'environnement WAS Liberty
Lors de la réécriture du CMD de l'image docker de Pod dans le manifeste de k8s, n'utilisez pas la commande
Environnement de production et credentials.yml.enc
Que faire si FacesMessage est défini mais pas affiché
Le saut de ligne du texte saisi n'est pas affiché dans la vue
Le code de sortie 1 se produit lorsque Rails est arrêté dans l'environnement Docker
L'erreur de remplacement final [Java] ne s'affiche pas au moment de la compilation
Comment résoudre le problème que l'image du site Web ne s'affiche pas après le déploiement sur heroku dans Rails 5
[Rails] Si CSS n'est pas appliqué dans collection_select, vérifiez si vous pouvez spécifier la classe.
Les données ne sont pas enregistrées dans Rails.
L'image n'est pas affichée dans l'environnement de production
Lorsque le projet n'est pas affiché dans eclipse
Ebean.update () n'est pas exécuté dans le modèle hérité.
[Erreur] L'application ne s'affiche pas dans l'environnement de production