我可以重新列出所有角色的所有用戶嗎?我需要知道全部每個用戶在我的數據庫中的角色。我使用ORM在Kohana 3.3中使用Auth模塊。如何使用Auth模塊檢索Kohana 3中的所有用戶和所有角色?
0
A
回答
0
是的,你可以。但我不明白爲什麼你想做這樣的事情不理想。
1. FULL ORM:
$users = ORM::factory('Auth_User')->find_all();
foreach($users as $user) {
$roles = $user->roles->find_all();
foreach($roles as $role)
$role->name;
}
2.通用SQL(提示):
SELECT * FROM users
INNER JOIN user_roles USING(user_id)
INNER JOIN roles USING(role_id)
ORDER BY users.name
結果:
- USER_1 role_1
- USER_1 role_2
- user_2 role_x
3.易於顯示SQL(但你改變每增加新角色代碼)
SELECT users.*, IF(r1.user_id IS NULL, 0, 1) AS role1, IF(r2.user_id IS NULL, 0, 1) AS role2, IF(rn.user_id IS NULL, 0, 1) AS rolen FROM users LEFT JOIN (SELECT user_id FROM user_roles where role_id = 1) AS r1 USING(user_id) LEFT JOIN (SELECT user_id FROM user_roles where role_id = 2) AS r2 USING(user_id) LEFT JOIN (SELECT user_id FROM user_roles where role_id = n) AS rn USING(user_id)
結果: username | role1 | role2 | rolen user1 | 1 | 0 | 0 user2 | 0 | 1 | 1
相關問題
- 1. 如何刪除Kohana中的所有用戶角色3
- 2. 如何檢索用戶所屬的所有角色(組)?
- 3. Kohana 3 auth模塊,如何配置用戶表和字段
- 4. kohana orm選擇具有所有給定角色的用戶
- 5. 使用Java從LDAP檢索所有用戶及其角色
- 6. 如何檢索用戶使用SOAP服務的所有組/角色?
- 7. 通過ADFS檢索.NET Web應用程序中的所有用戶和角色
- 8. 如何獲取角色中的所有用戶,包括角色中的角色?
- 9. Kohana 3驗證模塊,以'staff'或'manager'角色獲取用戶
- 10. 如何使用Kohana 2 Auth
- 11. 如何在Kohana 3 Auth模塊中列出當前記錄的用戶?
- 12. 使用rolify查找具有特定角色的所有用戶
- 13. 使用角色掩碼來查找所有具有特定角色的用戶
- 14. 如何使用PHP從LDAP目錄中檢索所有用戶?
- 15. 在Kohana的驗證模塊中選擇具有特定角色的用戶
- 16. ASP.NET MVC用戶在所有角色
- 17. Umbraco 5如何獲得所有角色和用戶
- 18. 檢索所有的用戶(用戶ID和用戶名)
- 19. 如何使用戶配置可用於模塊的所有類
- 20. 如何將所有用戶添加到Parse.com中的角色?
- 21. 如何使用遊標檢索TweetSharp的所有Twitter用戶?
- 22. JAVA從所有Windows用戶帳戶檢索所有打印機
- 23. 如何使用主POM文件檢出Web應用程序的所有模塊並構建所有模塊
- 24. 獲取當前用戶角色下的所有角色
- 25. 如何使用linq to sql檢查組的所有用戶都具有用戶角色?
- 26. Django檢索用戶的所有評論
- 27. 檢索所有用戶asyncronously .NET的MVC
- 28. 檢索所有賬戶,如果用戶已經使用C#
- 29. 選擇所有具有特定角色的用戶(其中用戶和角色是多對多的)
- 30. 授權在MVC中沒有分配角色的所有用戶