Как установить required = True для параметра json в python django?

Я разрабатываю веб-апи. Я беру тело запроса и хочу, чтобы некоторые параметры были обязательно доступны или чтобы они не могли быть пустыми.

Например:-

request body = 
{
"user" : username,
""id" : ID,
"detail" : {
    "hair" : yes,
    "height" : 111,
    "weight" : 29
    }
}

Я хочу установить "id" как required=True, а "height" также required=True.

Я искал и получил как установить "id" required=True {fields.Str(required=True)}, Но я не получил как установить "height" required=True.

Спасибо

Вы должны использовать вложенное поле: https://marshmallow.readthedocs.io/en/stable/marshmallow.fields.html#marshmallow.fields.Nested

Для параметра высоты можно создать сериализатор для обработки поля "detail" с помощью marshmallow следующим образом :

from rest_marshmallow import fields, Schema

class DetailSchema(Schema):
    hair = fields.String()
    width = fields.Integer()
    height = fields.Integer(required=True)

class RequestSchema(Schema):
    user = fields.String()
    id = fields.Integer(required=True)
    artist = fields.Nested(DetailSchema)

Вернуться на верх