如何擁有管理員用戶以及如何隱藏非管理員用戶的超鏈接?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. 管理員和非管理員帳戶的Restful api設計
- 2. WordPress的4.3隱藏非管理員的管理欄
- 3. 隱藏Drupal管理員
- 4. 谷歌管理員非管理員用戶的SDK
- 5. System.Data.SQLite慢連接非管理員用戶
- 6. Robocopy非管理員
- 7. 鏈接到Django管理員
- 8. 管理magento中的管理員帳戶
- 9. Laravel:如何區分普通用戶,管理員和管理員
- 10. Sonata管理員 - 子管理員類
- 11. Django管理員DoesNotExist在/管理員/
- 12. 如何啓用TYPO3非管理員來管理後端用戶
- 13. Drupal:來自管理員/管理員的用戶評論
- 14. SharePoint web部件自定義EditorPart隱藏非管理員用戶
- 15. Sitecore非管理員用戶顯示隱藏項目
- 16. 針對非管理員用戶的MSI
- 17. 隱藏管理員在Structr的結果
- 18. 如何限制活動管理員只有管理員用戶?
- 19. OSGi:條件許可管理員或用戶管理員
- 20. 允許管理員製作其他管理員用戶導軌
- 21. 401使用非管理員用戶
- 22. Windows環境變量擴展:管理員與非管理員
- 23. 如何從管理員powershell啓動非管理員進程
- 24. 流星:用戶帳戶管理和創建由管理員只
- 25. 隱藏/更改WooCommerce管理員通知
- 26. 隱藏燒瓶管理員路線
- 27. Django管理員,隱藏模型
- 28. 本地管理員組中的SharePoint場管理員帳戶
- 29. Django管理員用戶
- 30. 用管理員帳戶