Ruby on Rails 5.1.4 CSS-файлы не найдены, это дает пропущенную ошибку. в консоли браузера и логи геройки - PullRequest
0 голосов
/ 08 мая 2018

Я использую themeforest от asbab.Я добавил их в свое приложение ruby ​​on rails.Это прекрасно работает в localhost.Но при загрузке в heroku файлы css не найдены.Он не загружает все файлы css.

Ruby: 2.4.0

Rails: 5.1.4

Журналы Heroku

2018-05-07T16:43:00.642798+00:00 heroku[router]: at=info method=GET path="/assets/header.css" host=printorbuy.herokuapp.com request_id=354f10c5-98e6-408a-811a-dac5b5a357f2 fwd="157.32.106.197" dyno=web.1 connect=0ms service=6ms status=404 bytes=1902 protocol=https
2018-05-07T16:43:00.169047+00:00 app[web.1]: [9a3e2628-2587-4ea2-bc24-fb43f88193f4]   
2018-05-07T16:43:00.169098+00:00 app[web.1]: [9a3e2628-2587-4ea2-bc24-fb43f88193f4] ActionController::RoutingError (No route matches [GET] "/assets/simple-line-icons.css"):

Ответы [ 2 ]

0 голосов
/ 08 мая 2018

Используете ли вы конвейер ресурсов для включения файла CSS? Он должен заботиться о таких вещах, как снятие отпечатков пальцев для вас.

Если у вас есть файл темы CSS в vendor/assets/stylesheets, Rails автоматически загрузит его. У вас есть два варианта: загрузить его в файл application.css или загрузить отдельно, используя помощники.

Вариант 1: загрузка файла CSS в app/assets/stylesheets/application.css

/*
 *= require_self
 *= require my_theme
 */

Вариант 2: загрузка файла CSS с помощью Rails helpers :

# application.html.erb
<%= stylesheet_link_tag "my_theme", media: "all" %>

Я также рекомендую перейти к разделу Организация активов из официального руководства Rails Asset Pipeline, оно поможет вам понять и следовать соглашениям, поэтому вам не придется иметь дело с подобными случаями.

0 голосов
/ 08 мая 2018

, так как все активы маскируются до проверки развертываниянапример

/assets/plugins/animate-908e25f4bf641868d8683022a5b62f54.css

аналогично всем остальным CSS.

Если вы хотите это исправить, у вас есть 2 варианта

  1. отключить активдактилоскопия

    config.assets.digest = false  
    

    Для получения дополнительной информации см. http://guides.rubyonrails.org/asset_pipeline.html

  2. используйте scss (по умолчанию это ror), https://github.com/rails/sass-rails

    • изменить имя файла home.css на home.scss
    • изменить все url('<file-name>') на asset-url('<file-name>')
...