我有一个模型,我正在一步一步地填写,这意味着我正在制作一个表单向导.

因为此模型中的大多数字段都是必需的,但是有null=True, blank=True个字段,以避免在提交部分数据时引发NOT NULL错误.

我正在使用angular.js和django-睡觉-framework,我需要的是告诉API x和y字段应该是必需的,如果它们为空,则需要返回验证错误.

推荐答案

您需要明确覆盖该字段并添加您自己的验证器.你可以在这里阅读更多细节http://www.django-rest-framework.org/api-guide/serializers/#specifying-fields-explicitly.这是示例代码.

def required(value):
    if value is None:
        raise serializers.ValidationError('This field is required')

class GameRecord(serializers.ModelSerializer):
    score = IntegerField(validators=[required])

    class Meta:
        model = Game

Django相关问答推荐

如何根据属性的 Select 对查询集进行排序

如何在Django REST框架中实现ForeignKey搜索

Django REST框架中如何从另一个视图调用API视图?

如何删除django请求中的重复项

Docker 中的 Django检测到更改...,正在重新加载错误

Django celery 页面给出 404

django 创建多种类型用户的最佳方法

Django:无法从另一个应用程序导入模型

Django {{ MEDIA_URL }} 空白 @DEPRECATED

在生产中使用 Django 中的 SQLite?

如何在 django 模板中将名称反转为绝对 url?

Django聚合:仅求和返回值?

如何在 Django 测试框架中修改会话

在 Django REST Framework 中找不到资源时如何返回 404

带有 Django 和 Python 的 Atlassian Bamboo - 可能吗?

django python 日期时间设置为午夜

如何在 django 中仅获取表的特定列?

Django/Python初学者:执行python manage.py syncdb时出错-找不到psycopg2

django 如何知道已经运行了哪些迁移?

如何更改模型标签并给它一个自定义名称