我正在编写一个应用程序,我需要根据逻辑有两组完全不同的响应结构。
有什么方法可以处理这个问题,以便我可以序列化、验证和返回两个不同的响应模型并反映在 OpenAPI JSON 中?
我正在使用 pydantic 来编写模型。
我开始使用 cookiecutter-django,因为它似乎比 django-admin 更先进来启动我的项目。所以我创建了一个电子商务网站,它只需要电子邮件即可登录,而不需要用户名。
因此,我尝试按照文档并像这样更改我的 settings.py:
ACCOUNT_USER_MODEL_USERNAME_FIELD = None
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_AUTHENTICATION_METHOD = 'email'
ACCOUNT_EMAIL_VERIFICATION = 'mandatory'
AUTH_USER_MODEL = 'accounts.User'
LOGIN_REDIRECT_URL = 'users:redirect'
LOGIN_URL = 'account_login'
Run Code Online (Sandbox Code Playgroud)
这是我的帐户。用户模型:
from django.db import models
from django.contrib.auth.models import (
AbstractBaseUser, BaseUserManager
)
class UserManager(BaseUserManager):
def create_user(self, email, full_name, password=None, is_active=True, is_staff=False, is_admin=False):
if not email:
raise ValueError("Users must have an email address")
if not password:
raise ValueError("Users must have a password")
if not full_name:
raise ValueError("Users must have a fullname") …Run Code Online (Sandbox Code Playgroud)