Heroku上的Rails Stylesheets

在我的本地机器上,当我查看我的Rails应用程序时,我的样式表已成功链接到/assets/stylesheets/但是在Heroku上,它被更改为/stylesheets/可能在public目录中并且不起作用! 如何让我的样式public/stylesheets在编译时移动到public/stylesheets

编辑:

rake assets:precompile之后的文件目录rake assets:precompile

 app assets stylesheets application.css application.min.css home.css home.css.scss home.min.css scaffolds.css scaffolds.css.scss scaffolds.min.css startups.css startups.css.scss public assets application-3701cb84bbc3c20d5a7ec1aac608fbdb.js application-3701cb84bbc3c20d5a7ec1aac608fbdb.js.gz application-f7ff7ad51f3528ccca1b5c7f2d5b5915.css application-f7ff7ad51f3528ccca1b5c7f2d5b5915.css.gz manifest-ad3babc6c84cc0b38f1a98eb594b8235.json rails-afd7b40a0142ed24738b640e78388de4.png 

这是application.html.haml样式表链接:

 stylesheet_link_tag "flat-ui", "home.min", media: "all" 

gem flatui-rails在我的Gemfile中, *= require flat-ui在我的application.css文件中。

编辑2:

清除了我的public/assets文件夹,将public/assets/*添加到我的.gitignore并推送到我的Heroku仓库。 在slug编译期间,Heroku运行了资产管道并制作了/assets/application-b2c82b0573602f3a368a26f36b99542b.css ,它也链接在我网站的源代码中,但样式没有加载,我得到The page you were looking for doesn't exist. 当我尝试导航到样式表时…现在是什么?

这是我的application.html.haml

 !!! 5 %html %head %title StartupCrawler = stylesheet_link_tag "application", media: "all" = csrf_meta_tags = yield 

迈克尔,我在你推到heroku之前尝试:

rake assets:precompile

这将在公共文件夹中预编译它们,以便它们可以提供给Heroku。 如果这不起作用,请告诉我。

另外,请确保config / environments / production.rb中存在以下行

 config.serve_static_assets = true 

然后当然

git push heroku master

不要将已编译的资产签入Git,而是首先阅读: https : //devcenter.heroku.com/articles/ruby-support#plugin-injection-in-rails-4

你可以添加这个gem

gem’rails_12factor’

或者专门添加这个gem

rails_serve_static_assets

或者手动更改config/environments/production.rb中的config/environments/production.rb

config.serve_static_assets = true