首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Django/Postgres应用程序中存储用户位置

如何在Django/Postgres应用程序中存储用户位置
EN

Stack Overflow用户
提问于 2018-03-13 01:02:45
回答 1查看 958关注 0票数 1

我正在开发一个手机应用程序,它在每次打开应用程序时都会将用户的位置发送到后端。

,我的目标是为用户存储尽可能多的位置数据,这样我就可以做一些机器学习来计算他们日常活动区域中的哪些职位将最适合他们。

我使用GeoDjango和PostGis来使应用程序位置感知,并且很难确定数据库中哪种数据结构最适合这种情况。

问题在于我是否应该给每个用户一个location = pg_fields.ArrayField()属性,这个属性最终会变得非常大,还是使用location=models.ManyToManyField(UserLocation)。我知道,在具有大数组的Postgres中,吐司表是一个问题,但在运行机器学习算法时,当试图为用户提取数据时,这是否是一个不值得强调的大问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-14 22:30:37

将您的位置数据保存在它自己的模型中:

代码语言:javascript
复制
class UserLocation(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, ...)
    recorded_at = models.DateTimeField()  # time recoreded on phone
    created_at = models.DateTimeField(auto_now_add=True)  # time saved on db
    location =  models.PointField()
    accuracy = models.IntegerField() # meters, rounded up
    altitude = models.IntegerField(null=True, blank=True) # meters, rounded
    # more info... IP, phone type, phone id, session id, app version etc.
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49246721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档