【发布时间】:2019-04-23 09:29:40
【问题描述】:
我正在创建一个管理模板,并且有一个定制器部分,我在其中创建了 3 个单选按钮(名称为:红色、蓝色、绿色)。有一个左侧边栏导航菜单,我想通过单击单选按钮来更改边栏导航菜单的背景颜色。 如果我单击按钮,它会通过添加一个类来更改侧边栏导航菜单的 bg-color,但是如果我要去另一个页面,则会重新加载该类并删除该类。
我已经尝试了一件事,在我的 application_helper.rb 中我添加了以下代码
def is_active(action)
@color = "red"
params[:action] == action_name ? @color : nil
end
在我的布局文件夹中,我有一个部分文件 _sidebar.html.erb 并且在外部 div 中我正在使用如下所示的此帮助程序
<div class="sidebar-nav <%= is_active('action_name') %>" id="collapse-sidebar" >
我在这里做的是,检查动作名称是否匹配,然后添加一个红色类,该类存储在实例变量@color中
如果我可以动态地将单选按钮的值传递给 application_helper 文件,则意味着如果我单击红色,则该值应为红色,绿色则该值应为绿色。通过它我可以在应用程序助手中动态更改类名,并进一步改变侧边栏的颜色。
请,如果我做错了什么,或者这不是正确的方法,或者我们无法在 ruby on rails 中实现这种功能,请承认我,这将是可观的。
谢谢
【问题讨论】:
标签: ruby-on-rails ruby