2017-07-03 4 views
1

Ich versuche, mehrere Orte in einem Feld eines Django-Modells zu speichern, aber ich bin mir nicht sicher, wie ich vorgehen soll. Ich verwende GeoDjangos PointField, um den zuletzt gemeldeten Standort zu speichern.Standortverlauf in einem Django-Modellfeld speichern

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 = ? 

Ich habe bei Anwendungen wie django-field-history und ähnlich sah, aber sie scheinen entworfen werden, um Änderungen zu ermöglichen, von admin/user rückgängig gemacht werden, was ich nicht brauche.

Eine andere Methode scheint ein ForeignKey zu werden mit einem many-to-many-Beziehung zu einem Location Modell zu machen, aber ich kann nicht meinen Kopf herum scheinen, wie das als jeder Tracker würde funktionieren würde mehrere Location Modelle in dieses Feld, aber es würde mehrere Tracker s geben?

Komme ich aus der richtigen Richtung oder gibt es einen besseren Weg? Vielen Dank im Voraus!

Antwort

2

Sie möchten definitiv ein Location Modell mit einem ForeignKey auf Tracker.

Hinweis, dass dies nicht eine Beziehung "zu viele viele" schaffen, sondern ein "one-to-many" ein, wo ein tracker hat viele locations und ein location gehören zu einer einzigen tracker.

Verwandte Themen