Актив изображения не представлен в конвейере актива - PullRequest
0 голосов
/ 16 марта 2020

Ситуация, в которой нет проблем в разработке, но в производстве (с предварительно скомпилированными активами) изображение не найдено в конвейере активов.

Мне кажется, что мне не хватает чего-то тонкого, но после прочтения документации и поиска на этом сайте я не могу точно определить причину проблемы.

фрагмент из. html .erb просмотреть файл:

<div class="media-left">
   <figure class="image is-256x256">
      <%= image_tag('95090365.jpeg') %>
   </figure>
 </div>

Предварительно скомпилированное изображение находится в / public / assets: -

95090365-8976ee2cb59e500cd649fb288749282959ada00f93955c319300e4d85779d687.jpg

Когда я пытаюсь загрузив соответствующее представление, я получаю 500 ошибок на странице и вижу это в log / production.log:

I, [2020-03-16T05:11:48.841878 #1]  INFO -- : [d802e301-bbe2-4881-83ba-8e107adaa04e]   Rendering users/show.html.erb within layouts/application
I, [2020-03-16T05:11:48.842593 #1]  INFO -- : [d802e301-bbe2-4881-83ba-8e107adaa04e]   Rendered users/show.html.erb within layouts/application (Duration: 0.6ms | Allocations: 406)
I, [2020-03-16T05:11:48.842735 #1]  INFO -- : [d802e301-bbe2-4881-83ba-8e107adaa04e] Completed 500 Internal Server Error in 5ms (ActiveRecord: 0.4ms | Allocations: 1785)
F, [2020-03-16T05:11:48.843367 #1] FATAL -- : [d802e301-bbe2-4881-83ba-8e107adaa04e]   
[d802e301-bbe2-4881-83ba-8e107adaa04e] ActionView::Template::Error (The asset "95090365.jpeg" is not present in the asset pipeline.):
[d802e301-bbe2-4881-83ba-8e107adaa04e]      7:       <article class="media">
[d802e301-bbe2-4881-83ba-8e107adaa04e]      8:         <div class="media-left">
[d802e301-bbe2-4881-83ba-8e107adaa04e]      9:           <figure class="image is-256x256">
[d802e301-bbe2-4881-83ba-8e107adaa04e]     10:             <%= image_tag('95090365.jpeg') %>
[d802e301-bbe2-4881-83ba-8e107adaa04e]     11:           </figure>
[d802e301-bbe2-4881-83ba-8e107adaa04e]     12:         </div>
[d802e301-bbe2-4881-83ba-8e107adaa04e]     13:         <div class="media-content">
[d802e301-bbe2-4881-83ba-8e107adaa04e]   

Я заметил на некоторых других вопросах и ответах, что люди установили

config.assets.compile = true 

, чтобы исправить эту ошибку, но я вижу в документации Rails, которая не рекомендуется для Production

Этот режим использует больше памяти, работает хуже, чем по умолчанию, и не рекомендуется " - https://guides.rubyonrails.org/asset_pipeline.html

Я пробовал тег image_tag с суффиксом jpeg и без него, и та же проблема с обоими.

Есть идеи? Спасибо заранее .

1 Ответ

0 голосов
/ 16 марта 2020
 <%= image_tag('95090365.jpeg') %>

необходимо изменить на

 <%= image_tag('95090365.jpg') %>
...