1
我的應用程序中有幾個公司主題特定的樣式表,並且基於登錄用戶加載了特定的樣式表。在資產管道中加載多個應用程序樣式表
<% if current_user %>
<% stylesheet_link_tag "application_" + current_user.company.code.downcase %>
<% else %>
<%= stylesheet_link_tag "application" %>
<% end %>
THS正常工作在本地,但在生產:這是由「application.html.erb」加載應用程序文件的特定版本是這樣做(後「耙資產:預編譯」),它不起作用,因爲它似乎只有原始的'application.css.scss'被編譯,而不是像例如其他的'application_sal.css.scss'。我在這裏做錯了什麼?
這是要走的路嗎?當用戶在特定的應用程序文件中記錄加載,其中包含了公司的具體樣式:
@import "_variables.css.scss";
@import "_mixins.css.scss";
@import "_reset.css.scss";
@import "_layout.css.scss";
@import "_skeleton.css.scss";
@import "_theme_sal.css.scss";
@import "_form.css.scss";
@import "base.css.scss";
@import "print.css.scss";
@import "_modules.css.scss";
當用戶沒有登錄,默認的應用程序文件被加載:
@import "_variables.css.scss";
@import "_mixins.css.scss";
@import "_reset.css.scss";
@import "_layout.css.scss";
@import "_skeleton.css.scss";
@import "_form.css.scss";
@import "base.css.scss";
@import "print.css.scss";
@import "_modules.css.scss";
是有更好的方法來做到這一點?謝謝!
謝謝,沒想到這個! – John
要清楚,當您在config.assets.precompile中添加文件名時,可以忽略.scss擴展名。所以如果你的文件名是search.css.scss,只需像上面那樣添加'search.css'即可。 – Eskim0