2014-02-08 33 views
0

我在模型中有一個Imagefield,我也設置了默認值,我正在做一個get_or_create,如果Imagefield作爲None傳遞,我將返回字段爲在模型實例中,而不是作爲django默認字段。Django ImageField不採用默認值

這不是一個錯誤的行爲?如果我沒有通過None域,我會返回具有默認域的實例。

回答

0

default在模型對象創建時(注意它也可以被調用)用於python方面。它不是傳播到數據庫或替換空值或空值的東西。

+0

因此,在實例化模型時,不會將None等同於不向該字段發送任何值的字段? – iamkhush

+0

我認爲這是不一樣的。如果你通過None,它會將它設置爲None。如果您沒有給出任何價值,它將採用默認值。你可以看看這裏的代碼https://github.com/django/django/blob/master/django/db/models/base.py,第426-430行 – eran