ruby-on-rails - 从 Rails 4 中的 Controller 操作设置 Sass 变量

标签 ruby-on-rails css ruby-on-rails-4 sass

我在我的 Rails 应用程序中创建了一个名为 template.css.scss 的文件,其中包含我想要根据用户偏好动态更改的所有颜色样式。

这是它的一个小例子:

/* pink */
$lighter-shade: #F75F9E;
$darker-shade: #B54573;

.navbar-inverse {
  background-color: $lighter-shade;
}

#command-header {
  color: $darker-shade;
}

我想我可以做一个迁移来添加一个列来跟踪用户的样式偏好。当然,会有一个默认设置。然后我可以根据偏好更新 Sass 变量。

不幸的是,根据我的研究,似乎要走的路是创建单独的模板,然后根据用户的偏好动态设置这些模板。我真的希望情况并非如此,因为我现在组织事物的方式简洁高效,我不想失去它。

你会怎么做?

最佳答案

一种处理方式:获取用户的偏好并将其放入

data-user-preference="<%= current_user.pref %>">

然后使用 jquery 根据该首选项添加适当的类

$('.class-name').data('user-preference').addClass('whatever')

关于ruby-on-rails - 从 Rails 4 中的 Controller 操作设置 Sass 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35951399/

相关文章:

ruby-on-rails - 如何在 Rails 中没有 form_for 助手的情况下创建动态页面?

angularjs - 在 Rails 4 上安装 Angular 的最佳方法是什么?

ruby-on-rails - 在 rails_admin 中删除模型的操作

ruby-on-rails - 使用 vagrant 调试运行 docker 的 Rails 应用程序

ruby-on-rails - 从Ruby on Rails中的文件选择器对话框中获取文件的路径

php - 如何在弹出窗口中显示php mysql选择值

ruby-on-rails - 具有相同键的多个 store_accessor

android phonegap CSS 问题

javascript - Shiny - dashboardPage - 我怎样才能添加一个按钮到框标题

ruby-on-rails - Rails 4 的中间人