代码之家  ›  专栏  ›  技术社区  ›  blue_note

django:从纯web服务的应用程序中删除“blank=True”安全吗?

  •  0
  • blue_note  · 技术社区  · 6 年前

    我正在启动一个使用现有数据库的项目。生成的模型 inspectdb

    (...null=True, blank=True)
    

    blank 论点与django形式有关。我正在做一个web服务项目,使用 django rest框架 看法 MVC的组件(自动生成的表单、html模板等)。

    blank=True 从我的模特那里?

    3 回复  |  直到 6 年前
        1
  •  2
  •   Hevlastka    6 年前

    blank=True 当您尝试用空白字段序列化数据时,应用程序将无法通过验证。Django rest框架 ModelSerializer ModelForms .

    如果你不使用 ModelSerializers 空白=真 save方法将引发异常。

    空白=真 您的DRF序列化程序将无法验证空字段。

    看一看 this 关于DRF中验证如何工作的问题。

    希望这有帮助!

        2
  •  1
  •   Kevin Christopher Henry    6 年前

    可能不会。

    无论您的服务是什么,您可能都希望验证数据。而Django的验证依赖于此 blank=True documentation :

    blank

        3
  •  1
  •   Henry Woody    6 年前

    blank 空白的 False ,这是默认值,如果在POST请求中没有为此字段设置值,ModelSerializer将引发ValidationError。

    基本上,如果你把 blank=True

    什么都不会中断,只是此请求将无法创建资源。在我的书里我称之为安全。实际上,关键在于你是否需要这个字段。但既然你有 null=True .