gpt4 book ai didi

python - 使用mongoengine在Django中创建用户时添加其他字段

转载 作者:太空宇宙 更新时间:2023-11-03 17:29:24 24 4
gpt4 key购买 nike

我正在使用 MongoEngine 在 Django 上存储我的所有用户数据。

我想在创建用户时将其他字段(例如 user_id)添加到用户数据中。

我已经尝试了两种方法来做到这一点,但都返回相同的错误:无法解析字段“user_id”

方法一:

from mongoengine.django.auth import User
User.create_user(email=email, username=username, password=password)
User.objects(email=email.update(set__user_id=user_id, upsert=True)

方法2:

from mongoengine.django.auth import User
user = User.create_user(email=email, username=username, password=password)
user.user_id = user_id
user.save()

似乎 create_user 只接受一些特定字段,例如电子邮件、用户名和密码。

如何使用 mongoengine 将其他自定义字段添加到用户数据库中?

感谢您的回答。

最佳答案

您可以创建自定义用户类:

import mongoengine
from mongoengine.django.auth import User


class CustomUser(User):

user_id = mongoengine.StringField() # or another field

您必须告诉 Mongoengine 使用您的自定义类,因此在 settings.py 中添加:

MONGOENGINE_USER_DOCUMENT = 'path.to.your.module.CustomUser'

更多信息here (这是针对 Mongoengine 0.9 或更低版本的,因为在此版本之后已删除对 Django 的支持。)

关于python - 使用mongoengine在Django中创建用户时添加其他字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32109837/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com