accessing Ruby variable(from model or controller)

2019-04-07 14:18发布

Is there a way to access Ruby variables in SASS or do I have to make a custom function for it?

What I'm trying to do is to generate a stylesheet for each user so in the controller, I do something like:

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

then in the view name _styles.haml I do this:

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

is this possible at all?

*Apparently it isn't: http://sass-lang.com/docs/yardoc/file.FAQ.html#q-ruby-code

Is there a way other than this 'dirty' code fix we did(we converted _styles partial to rhtml then)

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

is there a way for this in haml?

1条回答
We Are One
2楼-- · 2019-04-07 15:02

You could define a custom SassScript function (example) that inserts the value.

查看更多
登录 后发表回答