def add_potential_georeference(self, lat, long, profile_name, locality_name=False, precision_m=False):
# Geographical position
point = Point(long, lat)
gp, created = GeographicalPosition.objects.get_or_create(point=point)
# Precision
if precision_m:
gp.precision_m = precision_m
# Author profile
profile = Profile.objects.get(name=profile_name)
# Locality name
if not locality_name:
ln = self.locality_name
else:
ln, created = LocalityName.objects.get_or_create(locality_name=locality_name)
# Georeference
gr, created = GeoReference.objects.get_or_create(geographical_position=gp,
locality_name=ln,
author=profile)
# Add it to list
if gr not in self.potential_georeferences.values():
self.potential_georeferences.add(gr)
评论列表
文章目录