最近写项目用到ThinkPhp,RBAC默认的四个表是 think_role、think_node、think_role_user、think_access,由于项目中的user表已被占,所以用admin表替代,接着问题就来了,登录的时候拿不到权限。

折腾半天,最后找到了问题,两种办法:

注:第一种办法是觉得自己的表不是user表就配置的时候改的,后来麻烦不断,问题很蛋疼。

①修改UserModel中的配置项:

'foreign_key' => 'admin_id'

然后将【think_role_user】表改为【think_role_admin】,表中【user_id】改为【admin_id】,最后修改ThinkPhp源文件【RBAC.class.php】中的所有【user_id】为【admin_id】。


②老老实实的将UserModel中的配置项【foreign_key】设为【user_id】,【think_role_user】表改为【think_role_admin】,字段【user_id】不动。