问题描述
首先,我喜欢Directus CMS,因此选择在新项目中实施它。到目前为止,我只是喜欢它。
现在我遇到了这样的问题,其中添加了用户创建功能,电子邮件验证等,一切都很好。直到我在directus_fields中添加了一个新的o2m字段并建立了适当的关系。在管理面板中效果很好,但是当我希望任何用户从前端进行注册时,api现在都会引发错误代码3、401未经授权的请求。我尝试了所有权限,包括联结收集,一个字段收集以及directus_users收集。
PS:当我尝试从directus_fields表中删除该字段时,它可以正常工作。这就是为什么我实际上猜测问题出在与关系相关的权限中。而且该关系在管理面板中也可以正常工作。
所以我的问题再次是,如果将一个o2m的“多对多”字段添加到“ directus_users”集合中,则权限是什么,公共用户/创建功能需要进行哪些更改。该字段未标记为必填。
我正在使用版本8.8.1
解决方法
现在,我提出了一个临时解决方案。
从directus_users表中删除了o2m字段,而是创建了一个包含其他users_data的新集合,并在其中创建了多对多字段,因此注册是安全的,并且不需要篡改directus_users表。我要做的就是另外修改前端的额外请求参数。
尽管,我仍然相信我的问题是有效的。