2011-02-23 76 views
1

零個值如果我有一個可爲空領域的典範:處理空值和在Django

class Something(models.Model): 
    parameter = models.FloatField(blank=True,null=True) 

我想,然後在視圖或模板來處理這個問題。

如果something.parameter有一個值,我想返回值,如果它爲null,我想返回'N/A'。

如果我使用:

something = Something.objects.get(id=1) 
output_string = 'parameter value: %s' % (something.parameter or 'N/A') 

然後其工作方式,不同之處的情況下something.parameter = 0,這也將返回 'N/A',而不是所期望的 '0'。

我該如何糾正這種行爲?

有沒有一種方法直接在模板中做到這一點?

回答

8

使用default_if_none模板過濾器:

{{ value|default_if_none:"N/A" }} 
+0

th謝謝你。在上述觀點中,這樣做的正確方法是什麼? (這是我需要這樣做的一個原因) – meepmeep 2011-02-23 12:19:38