Хранение истории местоположений в поле модели Django
Я пытаюсь сохранить несколько мест в поле модели Django, но я не совсем уверен, как это сделать. Я использую GeoDjango's PointField
хранить последнее сообщенное местоположение.
class Tracker(models.Model):
# Other fields..
# srid 4326 is the WGS84 Spheroid used by GPS
current_pos = models.PointField(editable=True, srid=4326)
pos_hist = ?
Я смотрел на такие приложения, как django-field-history
и аналогичные, но, похоже, они предназначены для того, чтобы администратор / пользователь мог отменить изменения, которые мне не нужны.
Другой метод, кажется, использует ForeignKey
сделать отношения многих ко многим с Location
модель, но я не могу понять, как это будет работать, как каждый Tracker
будет иметь несколько Location
модели в этой области, но было бы несколько Tracker
s?
Я подхожу к этому с правильного направления или есть лучший путь? Заранее спасибо!
1 ответ
Вы определенно хотите Location
модель с ForeignKey
на Tracker
,
Обратите внимание, что это не создаст отношения "многие ко многим", но "один ко многим", где tracker
имеет много locations
и location
принадлежат одному tracker
,