Javascript 如何在Django中向自定义用户添加更多字段?
当我的用户注册时,我试图将更多字段传递给它,但运气不好。到目前为止,我在Javascript 如何在Django中向自定义用户添加更多字段?,javascript,django,post,django-models,django-rest-framework,Javascript,Django,Post,Django Models,Django Rest Framework,当我的用户注册时,我试图将更多字段传递给它,但运气不好。到目前为止,我在validated\u数据中只能得到用户名和密码。我如何获取诸如医生是否在那里等数据?或者我看错地方了 这些字段确实是在用户表中以默认值创建的,但是我不能用true覆盖它们 class User(AbstractUser): is_doctor = models.BooleanField(default=False) is_secretary = models.BooleanField(default=Fal
validated\u数据中只能得到用户名和密码。我如何获取诸如医生是否在那里等数据?或者我看错地方了
这些字段确实是在用户表中以默认值创建的,但是我不能用true
覆盖它们
class User(AbstractUser):
is_doctor = models.BooleanField(default=False)
is_secretary = models.BooleanField(default=False)
is_patient = models.BooleanField(default=False)
下面是前端中试图在api中创建新用户的JavaScript
function registerUserAndDoctor(values) {
const credentials = {
...values //contains 'is_doctor: true'
}
fetch(`${process.env.REACT_APP_API_URL}/api/user/`, {
method: "POST",
headers: { "Content-type": "application/json" },
body: JSON.stringify(credentials),
})
.then((resp) => resp.json())
.then((res) => {
console.log("res USER>>", res);
})
.catch((error) => console.log(error));
}
是否确实已将自定义用户模型导入UserSerializer所在的文件中,而不是Django默认用户?快速看一眼,我不明白这为什么会失败(如果您绝对确定发送的数据正确)。您是否覆盖了AUTH\u USER\u MODEL
设置?您可以在我的序列化程序文件中了解更多信息:django.contrib.auth import get_user_model | user=get_user_model()
。我已经用auth_user_model='myAppName.user'覆盖了auth_user_模型。
class UserViewSet(viewsets.ModelViewSet):
queryset = User.objects.all()
serializer_class = UserSerializer
permission_classes = (AllowAny,)
function registerUserAndDoctor(values) {
const credentials = {
...values //contains 'is_doctor: true'
}
fetch(`${process.env.REACT_APP_API_URL}/api/user/`, {
method: "POST",
headers: { "Content-type": "application/json" },
body: JSON.stringify(credentials),
})
.then((resp) => resp.json())
.then((res) => {
console.log("res USER>>", res);
})
.catch((error) => console.log(error));
}