Mean.io - 扩展用户模型的最佳实践

Cam*_*art 1 authentication mean.io

Mean.io在用户包中附带内置用户模型.如果我想将附加数据附加到用户模型,那么扩展该用户模型的最佳做法是什么?

我使用Django的经历让我创建了一个"配置文件",其中有一个外键指向它所属的用户对象.我喜欢这种方法,因为我不会那样触摸用户包.但这是最佳做法吗?如果是这样,我如何确保在创建用户文档时创建配置文件?如果不是,那是什么?

小智 5

我不确定qm69的解决方案对于未来与均值的兼容性是最好的.在mean.io文档http://learn.mean.io/中,它声明开发人员不应该更改任何核心包,包括用户包.

mean.io模式是将任何和所有扩展实现为自定义包.并使用$ viewPathProvider.override方法覆盖默认视图.

其次,User包基本上是安全/身份验证功能,而不是定期接收更新的配置文件实现.改变这种情况很可能会破坏未来的修复并带来安全漏洞的风险.

我的建议是使用均值包系统实现配置文件,并为用户服务添加服务依赖项.我在之前的项目中完成了这项工作并且效果很好.

要实现配置文件包,请按照以下步骤操作:

1)使用平均包配置文件创建名为profile的自定义包.

2)为自定义包中的所有配置文件要求实现模型/视图/控件.不要改变用户包中的任何内容.

2)使用依赖注入包括全局服务服务.这将使您可以访问Global.user数据,因此您甚至不需要使用用户服务.

3)使用上面doco中提到的$ override方法覆盖任何用户视图.

希望这可以帮助 ;)