为了从公共目录中的主题文件夹编译额外的css资产,我将以下内容添加到assets.rb(rails 5.1)
#assets.rb
Rails.application.config.assets.paths << Rails.root.join("public", "themes", "default")
在视图(haml)中也位于公共目录中我有这个包括:
# public/layouts/default.html.haml
%link{:href => "/themes/default/sdk.css", :rel => "stylesheet"}/
sdk.css
/*
*= require self
*= require bootstrap/bootstrap
*/
令人惊讶的是这个scss文件没有被编译。浏览器中的输出完全相同:
/*
*= require self
*= require bootstrap/bootstrap
*/
另一个尝试是使用style_sheet助手:
= stylesheet_link_tag 'sdk.scss'
该文件正在提供,但未编译。
那么如何在运行时编译scss资源呢?
答案 0 :(得分:0)
我从你所包含的代码中注意到两件事:
答案 1 :(得分:0)
最后,我自己拿着一个来自rails的帮手
= stylesheet_link_tag 'sdk'
有人能告诉我为什么相对包含在这种情况下不起作用吗?
%link{:href => "/themes/default/sdk.scss", :rel => "stylesheet"}/