2013-10-23 65 views
0

我正在爲我的django應用程序製作一個非常簡單的過濾器方法。現在我有一個模型Foo。其中有場地。該區域是一個charfield。如何根據包含django中的數字的字符串過濾對象

class Foo(models.Model) 
    name = charfield 
    area = charfield 

現在我想根據區域範圍搜索foo中的對象。假設我有10個富有物體的區域(1平方英尺,100英尺,3平方英尺,4英尺,5英尺,6英尺,9英尺,17英尺,19英尺,4英尺)。

我想要一個查詢,它將獲取我在5-10範圍內的所有foos。在django對象中編寫這個過濾器的最佳方式是什麼?像這樣:

Foo.objects.filter(area__contains = string(range(5-10))) 

這是不正確的,但我想這樣的事情。 (如果問題不明確,請發表評論。)提前致謝。

+0

你可以嘗試使用範圍..更多的細節在這裏... https://docs.djangoproject.com/en/dev/ref/models/querysets/#range – nik

回答

1

如果該區域是一個數字,它應該是一個IntegerField。然後Foo.objects.filter(area__range=[5,10])將工作。您可以在模板中添加單位(在這種情況下爲平方英尺),以保存您的用戶每次輸入它們的工作,並保持這種一致性的惡夢。

相關問題