【发布时间】:2016-09-07 02:32:32
【问题描述】:
我有两个模型:
Model_A that contains a GeoDjango Point;
Model_B that contains a GeoDjnago MultiPololygon;
对于 Model_A 中的每个元素,我必须检查该点是否包含在 Model_B 元素的某个 m_polygon 中;
我可以进行这个简单的查询。
但我也想: 我在 Model_A 中有很多元素,在 Model_B 中有一些元素。 因此,迭代 Model_B 中的所有元素并检查 Model_A 中是否存在某个元素是否包含在当前 Model_B 元素中可能会更有效。
那么,有什么方法可以进行这个 GeoDjango 查询吗?
类似这样的:
Model_A.objects.filter(*point_is_contained_into*=a_model_b_mpolygon);
----------------- 编辑 -----------------
我试过用这个:
result = Model_A.objects.filter(position__intersects=a_model_b_mpolygon)
这对我有用。 在我的情况下使用这种类型的查询是否有禁忌症?
【问题讨论】:
标签: python django django-orm geodjango