Django 使用_set.all时顺序相反
我有两种关系:Django 使用_set.all时顺序相反,django,django-models,Django,Django Models,我有两种关系: class Contact(models.Model): first_name =models.CharField(max_length=30) class Activity(models.Model): action =models.CharField(max_length=200) whom =models.ForeignKey("Contact", null=True, blank=True) 与 我可以从我的url请求
class Contact(models.Model):
first_name =models.CharField(max_length=30)
class Activity(models.Model):
action =models.CharField(max_length=200)
whom =models.ForeignKey("Contact", null=True, blank=True)
与
我可以从我的url请求中调用特定的Contant
而且
c = contacts.activity_set.all
让我给所有的活动打电话
既然
.order\u by()
或reverse()
似乎不起作用,我如何才能调用活动,但顺序相反 这可能会奏效
reversed(contacts.activity_set.all())
但是,您应该这样做:
class Activity(models.Model):
action =models.CharField(max_length=200)
whom =models.ForeignKey("Contact", null=True, blank=True)
class Meta:
ordering = ['action']
或者
['-action']
将reversed()
强制queryset实例进行内部计算(由于django.db.models.query.queryset
实现中的所有非正统元类/重载内容)?良好的反向触发迭代,因此我无法让它工作,但如果在django中使用模板标记,如果将{%用于反向%}中的活动,它将向后显示。
class Activity(models.Model):
action =models.CharField(max_length=200)
whom =models.ForeignKey("Contact", null=True, blank=True)
class Meta:
ordering = ['action']