我正在为我的django应用程序制作一个非常简单的过滤方法。现在我有一个模特Foo。哪个有领域。这个区域是一个charfield。
class Foo(models.Model)
name = charfield
area = charfield
现在我想根据区域范围搜索foo中的对象。假设我有10个foo对象,有1个区域(1平方英尺,100英尺,3平方英尺,4平方英尺,5平方英尺,6平方英尺,9平方英尺,17平方英尺,19平方英尺,4平方英尺)。
我想要一个查询,它将获取5-10范围内的所有foos。在django对象中编写此过滤器的最佳方法是什么。像这样:
Foo.objects.filter(area__contains = string(range(5-10)))
这不正确,但我想要这样的东西。 (如果问题不明确,请发表评论。)提前致谢。
答案 0 :(得分:1)
如果区域是数字,则它应该是IntegerField。然后Foo.objects.filter(area__range=[5,10])
将起作用。您可以在模板中添加单位(在这种情况下为平方英尺),以便为用户保存每次输入它们的工作,并且保持一致的噩梦。