【问题标题】:Django rest Framework error messages. Does not workDjango 休息框架错误消息。不工作
【发布时间】:2022-01-11 17:39:42
【问题描述】:

我是 Django 新手,我正在做一个小项目,如果用户让字段为空,我希望显示一条错误消息。我写的代码不起作用。谁能帮帮我?

 def validate_name(school: School):
    if school.name is None:
      raise APIException(detail='Name is mandatory.')

 class SchoolService(object):
  @staticmethod
  def validate_create(school: School):
    validate_name(school)
  

【问题讨论】:

    标签: python django django-models error-handling


    【解决方案1】:

    Django Rest Framework 为这些常见的行为提供默认消息。

    您甚至不需要在字段中添加任何内容,因为字段默认为 required,除非您明确指定 required=False

    如果用户没有填写该字段,DRF 将自动返回一个 json 对象,说明该字段是必填的,应该填写。

    see docs

    【讨论】:

      【解决方案2】:

      在您的序列化程序类中尝试以这种方式添加验证

      from django.core.exceptions import ValidationError
      
      def validate_name(self, value):
         if value is None:
             raise serializers.ValidationError('Name is mandatory')
         return value
      

      【讨论】:

        猜你喜欢
        • 2018-08-03
        • 2022-12-19
        • 1970-01-01
        • 2018-04-02
        • 2013-04-08
        • 2015-06-30
        • 1970-01-01
        相关资源
        最近更新 更多