【发布时间】:2019-12-01 19:29:37
【问题描述】:
我现在使用 python/django 1 个月了,我需要帮助,因为我找不到任何类似的问题,我正在寻找答案。我有工人模型和工作模型。一个工人可以有很多工作。我需要查询 Worker 的最新工作。
class Worker(models.Model):
name = models.CharField(max_length=128)
class Job(models.Model):
worker = models.ForeignKey(Worker)
type = models.CharField(max_length=64)
position = models.CharField(max_length=64)
location = models.CharField(max_length=128)
start_date = models.DateField()
我目前正在使用此示例代码。问题是这会返回类似的 Worker 对象,包括它以前的作业。我只想查询 Worker 最新的工作地点和开始日期。
for employee in Job.objects.all():
print(employee.worker, employee.location, employee.start_date)
样本输出
(A, north, 2018-01-21)
(A, south, 2018-09-13)
(A, east, 2019-05-11)
(B, west, 2019-01-01)
有没有办法对 Worker.job_set.all() 这样的查询使用 for 循环来获得预期的输出
(A, east, 2019-05-11)
(B, west, 2019-01-01)
希望你能帮助像我这样的新手。先感谢您! :)
【问题讨论】:
标签: python django python-2.7 django-models django-views