我有两个模型:
class ModelOne(models.Model):
name = models.TextField()
year = models.IntegerField()
class ModelTwo(models.Model):
name = models.TextField()
year = models.IntegerField()
以及它们各自的进入模式
class EntryCenter(models.Model)
name = models.TextField()
user = models.ForeignKey(User,related_name="user_entrycenters")
class EntryOne(models.Model)
entrycenter = models.ForeignKey(EntryCenter,related_name="center_one_entries")
model_one = models.ForeignKey(ModelOne,related_name="model_one_entries")
added = models.DateTimeField(auto_now_add=True)
user = models.ForeignKey(User,related_name="user_one_entries")
class EntryTwo(models.Model)
entrycenter = models.ForeignKey(EntryCenter,related_name="center_two_entries")
model_two = models.ForeignKey(ModelTwo,related_name="model_two_entries")
added = models.DateTimeField(auto_now_add=True)
user = models.ForeignKey(User,related_name="user_two_entries")
现在我在EntryCenter XY
,我需要在这个中心查询这两个条目,并用oldest year first
按year
排序,然后呈现到模板。你知道吗
center = EntryCenter.objects.get(id=1)#<-- EntryCenter XY
one = center.center_one_entries.order_by('model_one__year')
two = center.center_two_entries.order_by('model_two__year')
entries = sorted(chain(one, two), key=lambda obj: obj.year)
one
是例如[1, 3, 4]
two
是例如[2, 5, 6]
我需要[1,2,3,5,4,6]
,我怎样才能做到这一点?你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐