Я хочу использовать GeoDjango для получения информации о точках местоположения пользователя, таких как город, страна и т. Д.
Чтобы использовать GeoDjango, мне нужно установить PostGIS
, который добавляет поддержку географических объектов в PostgreSQL.
Вопросы:
- Нужно ли устанавливать
PostGIS
в базе данных по умолчанию или лучше хранить данные о местоположении в другой базе данных?
- Могу ли я смешать
django.db.models
и django.contrib.gis.db.models
, чтобы сделать четкое различие между полями GeoDjango и полями по умолчанию?
Пример:
from django.db import models
from django.contrib.gis.db import models as geo_models
class Profile(models.Model):
"""
This model extends the `User` model as an One-To-One link.
"""
user = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
birth_date = models.DateField(null=True, blank=True)
company_name = models.CharField(max_length=100, blank=True)
location = geo_models.PointField()