Heroku application.css不在资产管道中
我知道这是一个老问题,但没有一个amnswer能解决我的问题 我是RubyonRails新手,刚刚创建了一个带有postgres数据库的项目,只是为了能够将项目上传到Heroku 当我启动rails服务器时,我得到一个错误“application.css不在资产管道中。” 我使用的是bootstrap 4 gem,这需要您将applications.css重命名为application.scss 我不知道怎么了 我真的尝试了stackoverflow上的每个答案,但没有成功:( 请帮帮我,我做错了什么 这是我得到的错误: 好的,首先 您是否在Heroku application.css不在资产管道中,heroku,ruby-on-rails-5,Heroku,Ruby On Rails 5,我知道这是一个老问题,但没有一个amnswer能解决我的问题 我是RubyonRails新手,刚刚创建了一个带有postgres数据库的项目,只是为了能够将项目上传到Heroku 当我启动rails服务器时,我得到一个错误“application.css不在资产管道中。” 我使用的是bootstrap 4 gem,这需要您将applications.css重命名为application.scss 我不知道怎么了 我真的尝试了stackoverflow上的每个答案,但没有成功:( 请帮帮我,我做错
config/environment
文件夹下的production.rb
文件中设置了config.service\u static\u files=true
因为我们在NGINX后面运行,所以在我们的例子中,它看起来像config.public\u file\u server.enabled=ENV['RAILS\u SERVE\u STATIC\u FILES']
第二件事。在将rails资源上传到服务器之前,您是否执行了rails资产:预编译
第三件事是。您是否尝试过调用文件application.css.scss
,并重做rails资产:precompile
最后也是最重要的一点。您的应用程序.scss
文件是什么样子的
您是否删除了所有的*=
并将@import
用于引导
文档中对其进行了很好的描述:
在app/assets/stylesheets/application.scss中导入引导样式:
//自定义引导变量必须在
引导。@导入“引导”
然后它说:
确保文件扩展名为.scss(或.sass表示sass语法)。如果
您刚刚生成了一个新的Rails应用程序,它可能附带一个.css文件
如果这个文件存在,它将被服务而不是Sass,所以
将其重命名为:
$mv app/assets/stylesheets/application.css
app/assets/stylesheets/application.scss然后,删除所有*=
require和*=Sass文件中的require_树语句。相反,
使用@import导入Sass文件
不要在Sass中使用*=require,否则您的其他样式表将不可用
能够访问引导混合和变量
阅读更多内容在我的例子中,我忘记在服务器中安装warn命令
因此,请在运行rails服务器之前安装“纱线”。否则“资产:预编译”将不会起任何作用,也不会给出任何警告。谢谢!这解决了我的问题!我向您致敬,先生!^^我很高兴为您效劳~