0

我正在为我的 django 应用程序制作一个非常简单的过滤方法。现在我有一个模型 Foo。其中有领域。这个区域字段是一个字符域。

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

现在我想根据区域范围搜索 foo 中的对象。假设我有 10 个具有面积的 foo 对象(1 平方英尺、100 英尺、3 平方英尺、4 平方英尺、5 平方英尺、6 平方英尺、9 平方英尺、17 平方英尺、19 平方英尺、4 平方英尺)。

我想要一个查询,它将获取 5-10 范围内的所有 foo。在 django 对象中编写此过滤器的最佳方法是什么。像这样的东西:

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

这是不正确的,但我想要这样的东西。(如果问题不清楚,请发表评论。)提前致谢。

4

1 回答 1

1

如果该区域是一个数字,它应该是一个 IntegerField。然后Foo.objects.filter(area__range=[5,10])会工作。您可以在模板中添加单位(在本例中为平方英尺),以使您的用户不必每次都输入它们,而您不必担心保持一致。

于 2013-10-23T13:45:25.810 回答