https://github.com/christoph88/kratos/tree/create-landingpage
我无法在 heroku 的生产中从我的 CSS 文件加载图像。在我的开发服务器上,它运行良好。
我尝试这样做:
#config/environments/production.rb
config.assets.compile = true
config.assets.digest = true
#cmd
rake assets:precompile RAILS_ENV=production
git add.
git commit -a -m "Your Commit"
git push heroku master
heroku run rake assets:precompile --app your_heroku_app
没有效果。
图像存储在资产/图像文件夹下。加载图像的 css 文件位于/vendor/stylesheets/landingpage/style 下.css
这是一个.css文件,所以我没有使用红宝石或sass帮助器的图像,而只是例如url(bgTop.jpg)
我尝试将文件重命名为 .css.scss 并使用 image-url("bgTop.jpg") 帮助程序,但这也没有效果。
我让它工作 bij 将我的 css 文件重命名为 .css.scss 并使用 image_url( 助手。接下来在帮助程序中,我需要将子目录放在image_url("landingpage/bgTop.jpg")
我还需要将所有图像子目录添加到资产管道中。
应用程序.rb
# add all asset pipeline images sub folders
Dir.glob("#{Rails.root}/app/assets/images/**/").each do |path|
config.assets.paths << path
end
并在生产中启用一些东西.rb
# Do not fallback to assets pipeline if a precompiled asset is missed.
config.assets.compile = true
# Generate digests for assets URLs.
config.assets.digest = true
只需将完整路径放入 css 中,包括 heroku 路径。
例如:https://floating-wave-85895.herokuapp.com/images/