我正在使用Laratrust为我的User
模型添加角色。我也想添加另一个表来使用角色。我添加modelAs
到配置中,但 Laratrust 混淆了这两种类型。user
使用 id[3] 查询时,我使用 id[3] 获取角色modelA
。我在配置中更改的只是 user_models 数组,如下所示:
'user_models' => [
'users' => 'App\User',
'modelAs' => 'App\ModelA'
],
然后我添加了modelArole_users
并设置user_type
为App\ModelA
|user_id |role_id |user_type |
|-----------|-----------|-----------------|
|3 |6 |App\User |
|3 |7 |App\User |
|3 |8 |App\ModelA |
User
当我使用语句时,多态关系不应该知道我没有使用模型$modelA->roles
吗?
我认为问题与缓存角色有关,因为用于缓存角色的redis
密钥laratrust_roles_for_user_3
对于user_type
. 那么缓存的值被覆盖了吗?我应该如何解决这个问题?
任何帮助,将不胜感激。