Ola, estou fazendo uma aplicação e gostaria que certa view tivesse um css diferente. Na minha pasta app/assets/stylesheet tem tres arquivos, o application.css o home.css.scss e painel.css.scss. Quando eu altero alguma propriedade por exemplo no painel.css.scss ele é aplicado em todo as views. Alguem pode dar uma luz do que tenho que fazeR? Ta foda de achar algo na internet sobre isso…
pra fazer isso funcionar você precisa assegurar 3 coisas:
seu application.css não faz require da árvore inteira: require_tree .
Ele precisa fazer require de um por um exceto o painel.css neste caso
Ex:
//= require home
//= require login
etc…
seu painel.css deve fazer require do application.css (//= require application) e extender as propriedades que você quer apenas para as views de painel
as views do painel devem ter um layout especifico, e não o application. Se você criar o layout painel.html.erb já vai funcionar por convenção.
E dentro do layout você carrega apenas o css do painel:
<%= stylesheet_link_tag “painel” %>
man, funcionou certinho aqui. só sobrou uma duvida, todas a views herdam do application que fica dentro da pasta layouts o
<%= stylesheet_link_tag “application”, :media => “all” %>, mas eu nao quero que uma especifica view herde isso, entao eu tiro do application e tenho que colocar isso manual em todas as views. to fazendo de forma errada? comecei agora com rails to tentando estudar bastante…
man, funcionou certinho aqui. só sobrou uma duvida, todas a views herdam do application que fica dentro da pasta layouts o
<%= stylesheet_link_tag “application”, :media => “all” %>, mas eu nao quero que uma especifica view herde isso, entao eu tiro do application e tenho que colocar isso manual em todas as views. to fazendo de forma errada? comecei agora com rails to tentando estudar bastante…
[quote=fmoraes]man, funcionou certinho aqui. só sobrou uma duvida, todas a views herdam do application que fica dentro da pasta layouts o
<%= stylesheet_link_tag “application”, :media => “all” %>, mas eu nao quero que uma especifica view herde isso, entao eu tiro do application e tenho que colocar isso manual em todas as views. to fazendo de forma errada? comecei agora com rails to tentando estudar bastante…
obrigado[/quote]
Isso.
Mas você pode usar um layout específico para essas views, colocando a declaração do css no layout.
Ou colocar em cada view mesmo.