如何拥有管理员用户以及如何隐藏非管理员用户的超链接?AuthLogic管理员用户和隐藏非管理员的管理链接
0
A
回答
0
我看起来很长很难找到如何做到这一点,最后它太简单了! 我不需要路由改变,加载控制器代码或类似的东西。 只需通过迁移在数据库中添加一个名为admin_flag的字段),然后修改Rails视图表单以进行新建/编辑以使用它。 然后在应用程序/ html.erb只需添加:
<% if current_user %>
<% if current_user.admin_flag == true %>
| <%=link_to(:categories, :categories) %>
| <%=link_to(:users, :users) %>
<% end %>
<% end %>
这将只显示用户和类别,如果登录的用户是管理员了。 在设置至少一个管理员用户之后执行此操作,或者您将需要使用sql来设置至少一个管理员用户。
1
我经常使用的另一种方法是使用另一个称为UserGroup的模型。例如:
$ rails g scaffold user_group name:string description:text is_admin:boolean
你会再增加一个user_group_id:integer
到您的用户模型:
$ rails g migration add_user_group_id_to_users user_group_id:integer
在你的用户模型,你可以再添加两个实例方法来帮助你计算出,如果任何特定用户一个“正常”的用户或“admin”用户
#app/models/user.rb def normal? self.user_group && !self.user_group.is_admin end def admin? self.user_group && self.user_group.is_admin end
这可能是过度杀死那里只有管理员与非管理员的项目,但是很方便,如果你有很多类别的用户,如ecommerce_manager,story_editor等。
相关问题
- 1. Robocopy非管理员
- 2. 链接到Django管理员
- 3. 管理magento中的管理员帐户
- 4. Laravel:如何区分普通用户,管理员和管理员
- 5. Django管理员DoesNotExist在/管理员/
- 6. Sonata管理员 - 子管理员类
- 7. Drupal:来自管理员/管理员的用户评论
- 8. 隐藏管理员在Structr的结果
- 9. OSGi:条件许可管理员或用户管理员
- 10. Windows环境变量扩展:管理员与非管理员
- 11. 如何从管理员powershell启动非管理员进程
- 12. Django管理员,隐藏模型
- 13. 隐藏烧瓶管理员路线
- 14. 隐藏/更改WooCommerce管理员通知
- 15. 本地管理员组中的SharePoint场管理员帐户
- 16. 用管理员帐户
- 17. Django管理员用户
- 18. CodeIgniter管理员
- 19. 管理员用户的MVC用户管理
- 20. 如何转移管理员和管理员的SonataAdminBundle
- 21. 管理和非管理
- 22. Firebase管理员和用户帐户
- 23. Rails:拥有管理员和管理员以及用户的组织
- 24. 如何获得Prestashop管理员目录和管理员网址?
- 25. 管理员连接两个用户
- 26. API管理服务 - 管理员组
- 27. 解锁租户管理员
- 28. 页面管理员作为应用程序的管理员?
- 29. 评论适用于管理员的管理员工具标签
- 30. 当用户已经是管理员时,通过C++激活管理员[以管理员身份运行]