Codeigniter Ion Auth编辑用户表


Codeigniter Ion Auth editing users table

我是Codeigniter的新手,正在学习离子认证系统。我只是有几个问题:

1)是否可以修改默认的users表?(你会建议支持还是反对?)我明白,模型,视图,库或控制器中可能存在期望表具有其确切默认结构的函数,但例如,我不需要公司列,那么我如何才能删除它?

2)如何向默认users表添加额外的用户信息?(如果我只是执行一些sql来添加列到默认的用户表,它会影响任何函数吗?)

3)这是第一个问题的后续,有没有人建议为我的其他用户信息创建一个单独的表,并使用他们的用户id作为这个新表的主键,然后通过我自己的模型访问这些信息?

谢谢你的帮助!

  1. 是的,可以编辑用户表,但是,您必须通过ion_auth_model/library来检查对您要删除的字段的调用/写入。否则,在尝试向不存在的字段插入数据时,您将遇到500个错误。

  2. 是的,您可以在phpmyadmin中添加额外的字段,您可以访问数据库本身。额外的字段要么需要设置为null(以防止在不存在数据时写入错误),要么必须根据需要包含这些字段并将它们添加到ion_auth的现有函数中。

  3. 坚实的想法,通常我走的规则是保持尽可能少的空字段在数据库中。因此,如果每个用户都有额外的信息,并且您没有将表扩展到一个荒谬的长度,那么我将把它附加到users表中。否则,如果要添加可选的附加字段,则最好使用关联表。


不要忘记你是开发人员,库是为了方便和安全而使用的,但不要觉得你不能调整它们以更好地满足你的需求。这就是我们如何得到千篇一律的应用程序。

向数据库中的默认用户表添加/删除字段是可以的,只要您删除依赖于它的Ion Library中的相关代码。我鼓励您派生Ion Authentication库,并根据您的需求对其进行修改。

如果您不想修改Ion Library,那么创建另一个表来存储额外的信息是正确的方法。

对于修改数据库表/字段,建议使用CodeIgniter的迁移,以便您可以跟踪源代码存储库(如Git)中的数据库更改。