2010-06-03 9 views
6

¿Hay alguna manera de acceder a las variables Ruby en SASS o tengo que hacer una función personalizada para ello?accediendo a la variable Ruby (del modelo o controlador) en SASS

Lo que estoy tratando de hacer es generar una hoja de estilo para cada usuario por lo que en el controlador, que hago algo así como:

def show 
    respond_to do |format| 
    format.css{render :partial => "styles"} 
    end 
end 

continuación, en el nombre de la vista _styles.haml hago esto:

:sass 
    #header 
    :background url(user.banner.url) 

¿esto es posible?

* Al parecer no lo es: http://sass-lang.com/docs/yardoc/file.FAQ.html#q-ruby-code

¿Hay una manera que no sea esta 'sucia' arreglo de código que hicimos (convertimos _styles parciales a continuación) RHTML

#header { 
    background: #efefef url(<%= @company.settings.banner.url %>); 
} 

hay una manera para esto en haml?

Respuesta

5

Puede definir una función personalizada de SassScript (example) que inserta el valor.

+0

¿cómo podríamos llamar a la función si el argumento es también una variable? – corroded

+3

Algo como esto: http://gist.github.com/428874 –

+0

Hmm voy a estudiar este código y ver si funciona :) ¡Gracias por la ayuda! – corroded

Cuestiones relacionadas