Python 向用户添加角色(MongoEngine)
我构建了一个小api,应该能够将角色添加到用户:Python 向用户添加角色(MongoEngine),python,flask,mongoengine,flask-security,Python,Flask,Mongoengine,Flask Security,我构建了一个小api,应该能够将角色添加到用户: user = user_datastore.find_user(email=flask.request.args.get('email')) role = user_datastore.find_role(flask.request.args.get('role')) result = user_datastore.add_role_to_user(user, role) (角色和电子邮件通过api发送)。它会找到正确的用户和角色对象,结果为T
user = user_datastore.find_user(email=flask.request.args.get('email'))
role = user_datastore.find_role(flask.request.args.get('role'))
result = user_datastore.add_role_to_user(user, role)
(角色
和电子邮件
通过api发送)。它会找到正确的用户和角色对象,结果为True
,但不会将任何内容添加到用户的角色列表中,该列表将保留[]
,不包含任何角色
我的设置类似于/直接基于
这一定很简单,但我似乎找不到:/
BR Carst可能是我遗漏了什么,但您需要提交更改,对吗
user = user_datastore.find_user(email=flask.request.args.get('email'))
role = user_datastore.find_role(flask.request.args.get('role'))
result = user_datastore.add_role_to_user(user, role)
# to save in database, you must commit (assuming 'db' is the object)
db.session.commit()
正如Matt W所说,这似乎是一个bug。我在github中记录了一个问题,地址为:
可能
将角色添加到用户中
不要保存对象(请参阅),您必须调用user.save()
。我的代码中似乎有一个bug。提交一个问题?嗨,codegeek,这对sqlalchemy是正确的,但在使用mongoengine时不是。因此,在这种特殊情况下,情况并非如此(但可能是其他人在使用sql db时遇到此问题)