【发布时间】:2013-12-01 22:09:49
【问题描述】:
我正在尝试使我的应用程序中的特定链接仅对属性:department 等于“销售”的用户可见。
换句话说,我有一个模型Users,其中一个用户有password、username 和department。用户登录后,会话将保存:user_id。
我想做的是当我的视图被渲染时,取决于登录用户的:department,要么显示,要么不显示特定链接。
这是我认为的代码,但我正在为如何获取会话信息并从中找到用户的部门而苦苦挣扎。
<% if Users.where(id: session[:user_id])[:department] == "Sales" %>
<%= link_to 'New Request', new_request_path %>
<% else nil %>
<% end %>
我知道在控制器或模型之外的任何地方进行查询都是不好的,所以如果您对如何更好地构建此逻辑有任何建议,我将不胜感激。
【问题讨论】:
标签: ruby-on-rails activerecord session-variables actionview