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的結果。 –