Python 创建对象时如何定义字段?
我正在创建一个这样的对象Python 创建对象时如何定义字段?,python,django,Python,Django,我正在创建一个这样的对象 order = Order.objects.create(created_by=anon_user,modified_by=anon_user) 我收到一个错误orders\u order.phone不能为NULLphone是属于Order模型的许多字段之一 在创建Order对象时,我(逻辑上)未能包含phone字段 任何建议 Django要求您的电话字段现在不为空。这也意味着您不能传递phone=None,因此,如果要传递到Order对象中的phone变量为None
order = Order.objects.create(created_by=anon_user,modified_by=anon_user)
我收到一个错误orders\u order.phone不能为NULL
phone
是属于Order
模型的许多字段之一
在创建Order
对象时,我(逻辑上)未能包含phone
字段
任何建议 Django要求您的电话字段现在不为空。这也意味着您不能传递phone=None,因此,如果要传递到Order对象中的phone变量为None,它将失败 你的选择是:
根据您的问题,假设模型要求电话号码在创建时存在 你能做的事
phone\u number=models.PhoneField(null=True,blank=True)
phone\u number=models.PhoneField(默认值为6132760547')
空的
或无
第二个是,如果没有传递任何内容,则默认值为该数字 在创建对象时包括该字段。使用与我已经回答的问题相同的逻辑。如果您不想在订单模型中传递phone对象,请允许其为空。或者,将这些字段设置为空,并在必要时使用ModelForm强制其存在。@IgnacioVazquez Abrams这就是我想要的帮助,因为我尝试了
order=order.objects.create(创建人=anon\u user,修改人=anon\u user,电话=phone)
但失败了。也许我只是不知道如何…,在你发布答案时我已经解决了这个问题,我选择了第二个选项。