如何在创建对象时定义字段?

时间:2013-02-15 19:24:22

标签: python django

我正在创建一个像这样的对象,

order = Order.objects.create(created_by=anon_user,modified_by=anon_user)

我收到错误orders_order.phone may not be NULLphone是属于Order模型的众多字段之一。

我在创建phone对象时失败(逻辑上)包含Order字段。

任何建议。

2 个答案:

答案 0 :(得分:1)

Django要求您的手机字段现在不为空。这也意味着您无法传递phone = None,因此如果您传递给Order对象的手机变量为None,则会失败。

您的选择是:

  1. 在模型上设置默认值
  2. 在模型上允许null
  3. 在创建时将非空值传递给模型

答案 1 :(得分:0)

假设您的问题,该模型要求创建电话号码。

你可以做的事情。

  1. phone_number = models.PhoneField(null=True, blank=True)
  2. phone_number = models.PhoneField(default='6132760547')
  3. 对模型更改进行更改应首先说明该字段可以为空白,如包含emptyNone

    第二个是如果没有传递,则默认值是该数字。