使用 Ion Auth 在 Codeigniter 中创建用户角色和配置文件

发布于 2024-11-13 06:45:10 字数 276 浏览 2 评论 0原文

我使用 Codeigniter 和 Ion Auth 进行用户管理。我想创建两种不同的用户角色 - 一种用于志愿者,一种用于组织。我知道我可以使用 Ion Auth 的 groups 来进行访问控制之类的事情,但是向不同用户类型添加字段(例如,志愿者用户将拥有“所讲语言”)的好方法是什么? ' 字段,而组织将有一个 '使命' 字段)?我应该为每个新用户类型扩展 Ion Auth 类并单独处理每种类型的 CRUD,还是使用“组”字段和用户 ID 来引用另一个表中的字段?对于解决这个常见问题的方法有什么见解吗?

I'm using Codeigniter with Ion Auth for user management. I'd like to create two different user roles - one for volunteers and one for organizations. I know that I can use Ion Auth's groups for things like access control, but what would be a good way to add fields to the different user types (for instance - the volunteer user will have a 'languages spoken' field while the organization will have a 'mission' field)? Should I extend the Ion Auth class for each new user type and handle CRUD seperately for each type, or use the 'groups' field and the user id to reference the fields in another table? Any insight as to an approach to this common problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

極樂鬼 2024-11-20 06:45:10

我建议仅将您需要的所有字段添加到元表中,并仅更新每个用户组所需的字段。如果您需要每个用户多个组,请查看 Ion Auth v2

I would recommend just adding all the fields you need into the meta table and only updating the ones you need per user group. If you need multiple groups per user check out Ion Auth v2.

话少情深 2024-11-20 06:45:10

我之前遇到过同样的问题,我最终所做的是构建关系表来处理具有不同字段的不同组。然后我稍微修改了 profile() 代码,根据用户的组设置加入附加关系表。

我会开始构建一个关系数据库。

示例:

**volunteers table**
id
user_id
languages

**organizations table**
id
user_id
mission

然后根据用户组,在 profile() 函数中加入表。

希望这有帮助!

I had the same problem before, what I ended up doing was building relation tables to handle different groups with different fields. Then I modified the profile() code a bit, to join the additional relation table according to the user's group settings.

I would start off building a relational database.

example:

**volunteers table**
id
user_id
languages

**organizations table**
id
user_id
mission

Then depending on user group, join the table in profile() function.

Hope this helps!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文