如何使用 Flask-user 扩展创建用户 'programmatically'?
How to create a user 'programmatically' with Flask-user extension?
我的项目中使用了这个扩展:https://pythonhosted.org/Flask-User/index.html
我还有一个 REST API 和一个 register() 函数,它接受 JSON-object 并且应该能够创建一个新用户.
如何使用 Flask-user API 实现此目的?
更新:
我有一个完全创建的用户模型。基本上我需要 Flask-user 提供的某种 User() 构造函数,我可以在其中传递来自 JSON-object.
的输入
为什么需要它:
Flask-user 扩展有它自己的工作方式。例如,它发送电子邮件以确认帐户,以自己的方式散列密码。
简短的回答是否定的,没有与 Flask-User register
view does. You'll have to do everything that view does when handling a POST request 相同的内置方法来执行注册。基础知识是:
- 使用您拥有的数据创建和填充模型。
- 使用
user_manager.hash_password(secret)
创建一个散列密码,并将其设置在用户身上。
- 致电
_send_registered_email(user, email, True)
发送确认邮件。
这就是它的基本工作原理:
user = User()
user.username = request.json['username']
user.first_name = request.json['first_name']
user.last_name = request.json['last_name']
user.email = request.json['email']
user.password = user_manager.hash_password(request.json['password'])
db.session.add(user)
db.session.commit()
我的项目中使用了这个扩展:https://pythonhosted.org/Flask-User/index.html
我还有一个 REST API 和一个 register() 函数,它接受 JSON-object 并且应该能够创建一个新用户.
如何使用 Flask-user API 实现此目的?
更新: 我有一个完全创建的用户模型。基本上我需要 Flask-user 提供的某种 User() 构造函数,我可以在其中传递来自 JSON-object.
的输入为什么需要它: Flask-user 扩展有它自己的工作方式。例如,它发送电子邮件以确认帐户,以自己的方式散列密码。
简短的回答是否定的,没有与 Flask-User register
view does. You'll have to do everything that view does when handling a POST request 相同的内置方法来执行注册。基础知识是:
- 使用您拥有的数据创建和填充模型。
- 使用
user_manager.hash_password(secret)
创建一个散列密码,并将其设置在用户身上。 - 致电
_send_registered_email(user, email, True)
发送确认邮件。
这就是它的基本工作原理:
user = User()
user.username = request.json['username']
user.first_name = request.json['first_name']
user.last_name = request.json['last_name']
user.email = request.json['email']
user.password = user_manager.hash_password(request.json['password'])
db.session.add(user)
db.session.commit()