2011-04-15 51 views

回答

3

傑森卡爾弗建議在另一個類似question我問提供的答案,創建自己的模板過濾器。

False和None被視爲變量而不是常量。如果變量在上下文字典中找不到,則解析爲無。

1

這只是Python解決不同類型之間比較「真相」的方式。

查看文檔。 「無」被認爲是錯誤的。

http://docs.python.org/library/stdtypes.html#truth-value-testing

編輯:下面,蟒蛇控制檯無法確認此現象,所以,我也吃了一驚。 -1給我!

+1

if None == False不會在我的python控制檯中產生。 – goh 2011-04-15 03:27:24

+0

只需輸入「None == False」 – laher 2011-04-15 03:32:33

+0

(放下「if」) – laher 2011-04-15 03:33:59

3

奇怪。在常規python中,

if None == False: 
    # this will not run 
    print "abc" 

在Django上生成一個錯誤。 :)

+0

試圖提交了票,但得到了以下錯誤:提交拒絕爲潛在垃圾郵件(BlogSpam說內容是垃圾郵件(BADIP:州/ blacklist.d/127.0.0.1)) – goh 2011-04-15 04:08:09

0

現在它看起來像是你將不得不在本post

+0

我想我只是做了我的邏輯視圖側。 – goh 2011-04-15 04:22:05

0

或者,您可以做if not None