Skip to main content
 首页 » 编程设计

python之django 使用列值进行过滤

2024年08月19日35qq78292959

我有一个包含位置数据的点表,存储在以下列中:

coordinates: the geolocation data in longitude and latitude 
radius:      the distance from coordinate that it is visible 

现在我取一个随机点,并想使用 django 地理定位找到随机点可见的点,例如:

LocationInfo.objects.filter(coordinates__distance_lt=(random_point, D(km=1)) 

目前我正在检索 1 公里半径内的点,但我想使用表格中的半径。如何使用表格中的半径?

请您参考如下方法:

filters-can-reference-fields-on-the-model

from django.db.models import F 
 
LocationInfo.objects.filter( 
    coordinates__distance_lt=(random_point, D(km=F('FIELD_NAME')) 
) 
#                                               ^^^^^^^