3
如果我做Django的模型对象初始化
obj = Object()
obj.att1 = 'test'
obj.att2 = 'test'
obj.save()
obj.id - >工作正常
但如果我这样做
obj=Object(att1='test',att2='test').save()
做obj.id - > OBJ似乎在这个阶段是Nonetype
这是这种情况?
如果我做Django的模型对象初始化
obj = Object()
obj.att1 = 'test'
obj.att2 = 'test'
obj.save()
obj.id - >工作正常
但如果我这样做
obj=Object(att1='test',att2='test').save()
做obj.id - > OBJ似乎在这个阶段是Nonetype
这是这种情况?
我不知道你使用的是精确的框架,但我将采取猜测,这个问题:
Object(att1='test',att2='test').save()
的save()
功能似乎并没有返回Object
实例它返回None
。所以你通常会:
obj=Object(att1='test',att2='test')
obj.save()
然后检查obj.id
。
谢谢dclements。你的方法工作正常。顺便说一句,我在Django框架中使用python语言。 – user1076881
创建,保存并返回对象的Django单线程是Object.objects.create(att1 ='test',att2 ='test')'。 –
这是完美的答案。因为你在做什么只是两件不同的事情。在第一种情况下,创建对象和obj是OBJECT。第二种情况 - obj是FUNCTION的结果。 –