【发布时间】:2015-02-09 20:59:17
【问题描述】:
我正在 Django 中编写一个视图,它应该能够检索我朋友的位置。使用基本查询检索我的朋友列表后,这似乎很简单;但是我还想知道 User 对象的用户名,它是我的 Location 模型的外键。
class Location(models.Model):
user = models.ForeignKey(User, null=True)
latitude = models.FloatField(max_length=100, null=True)
longitude = models.FloatField(max_length=100, null=True)
altitude = models.FloatField(max_length=100, null=True)
provider = models.CharField(max_length=100, null=True)
status = models.IntegerField(max_length=1, default='0', null=True)
last_updated_at = models.DateTimeField(auto_now=True)
我是这样查询模型的:
friends_location = Location.objects.filter(user=friends)
这是我从这个查询中得到的“位置”对象之一:
{“字段”:{“状态”:1,“last_updated_at”:“2014-12-10T16:30:29.603Z”,“高度”:0.0,“经度”:-2.21698,“用户”:2 ,“提供者”:“0”,“纬度”:53.456542},“模型”:“app.location”,“pk”:5}
在这种情况下,我没有获取用户名,而是获取对象“user:2”的 id,所以我的问题是我应该如何查询模型以返回相同的列表,但使用类似“User.username:爱德华多”。
【问题讨论】:
-
这不是您从查询中得到的:这是对该查询结果进行某种序列化操作的输出。你应该准确地展示你为得到它所做的事情。
-
没错,如果我将朋友的位置作为 http 响应返回,我只会得到“Location objectLocation objectLocation object”,我想这是有道理的。
标签: python django django-models foreign-keys django-views