0

我有一个名为 bank 的模型,它的 Credit 类与用户相关联。然后我有一个名为 program 的模型,它的 NewProgram 类也与用户相关联。

现在,我想列出所有 NewProgram 对象按用户 Credit 升序到我的 views.py 的顺序。而且我不知道我将如何使用 .order_by 方法来做到这一点。

我希望有人能给我一些提示。

这是我的代码:

应用名称:银行

模型.py

class Credit(models.Model):
    credit_balance = models.DecimalField(max_digits=6, decimal_places=2)
    depositor = models.ForeignKey(User, unique=True)
    last_updated = models.DateTimeField(auto_now=True)

    def __unicode__(self):
        return u'%s' % self.depositor.username

应用名称:程序

class NewProgram(models.Model):
    program_creator = models.ForeignKey(User, related_name='program_creator')
    joining_credit_value_offer = models.DecimalField(max_digits=6, decimal_places=2)
    site = models.ForeignKey('ProgramSite')
    uid = models.CharField(max_length=50)
    title = models.CharField(max_length=30)
    desc = models.CharField(max_length=150)
    content = models.TextField(blank=False)
    is_published = models.BooleanField(default=True)
    referrals = models.ManyToManyField(User, through='ReferredUser')
    creation_date = models.DateTimeField(auto_now_add=True)

这是我想要完成的事情

list = NewProgram.objects.all().order_by(<Users Credit><ASC>)

非常感谢,任何帮助将不胜感激。

4

2 回答 2

2

你可以尝试使用这个

list = NewProgram.objects.all().order_by('-program_creator__credit__credic_balance')

Django 通过__.

于 2013-04-16T04:52:25.950 回答
0

你好,你可以使用这个:

#Note, no need to use .all()
list = NewProgram.objects.filter(credit_set__depositor="some_user")
于 2013-04-16T05:00:09.910 回答