Ich hoffe es hilft jemandem.
ruby '2.6.5' rails '6.0.0'
Ich mache einen Originalantrag.
Die Produktionsumgebung verwendet Heroku. Nach der Bereitstellung in Heroku und der Überprüfung des Vorgangs wurde ein Fehlerprotokoll angezeigt.
Ich dachte, dass die Ursache darin bestand, dass sich der Pfad zum Image gegenüber dem Fehlerprotokoll in der Produktionsumgebung geändert hat.
Wenn es lokal ist, wird es so angezeigt, wie es ist, wenn Sie es direkt unter Assets / images / platzieren. In der Produktionsumgebung ist ein Fehler aufgetreten, weil er vorkompiliert und nicht angezeigt wurde.
Wenn ich nachschaue In der Produktion legt Rails die vorkompilierten Dateien in public / assets ab. Die vorkompilierte Datei wird vom Webserver als statisches Asset behandelt. In App / Assets platzierte Dateien werden in einer Produktionsumgebung niemals unverändert verwendet. ``
Klicken Sie hier für Referenzartikel
Erstellen Sie einen Pfad für die Produktionsumgebung, indem Sie auf den obigen Artikel verweisen.
_medicine.html.erb
<%= image_tag asset_path('medicine3.jpeg'), class:"med-pic" %>
Ich habe den Pfad auf diese Weise neu angegeben, aber in meinem Fall ist erneut ein Fehler aufgetreten.
Bitte weisen Sie darauf hin, dass die Einstellungen für die Vorkompilierung von Assets in der Produktionsumgebung möglicherweise nicht festgelegt wurden.
Vorher ändern
production.rb
config.assets.compile = false
Nach der veränderung
production.rb
config.assets.compile = true
Als ich dies aktivierte, konnte ich das Bild sicher anzeigen.
<< Für Anfänger >> Wenn das Bild nicht in der Produktionsumgebung angezeigt wird, gibt es keinen Verlust beim Ausprobieren
29
config.assets.compile = true
% rails assets:precompile
<%= image_tag asset_path('medicine3.jpeg'), class:"med-pic" %>
Es ist möglicherweise besser, einen kurzen Blick darauf zu werfen, was die Vorkompilierung von Assets bewirkt!
Recommended Posts