內我有這些模型:過濾器通過現場ORDER_BY
class EntryRank(models.Model):
value = models.FloatField(default=0)
user = models.ForeignKey('SomeUser')
entry = models.ForeignKey('Entry')
class Entry(models.Model):
feed = models.ForeignKey('RSSFeed')
title = models.TextField()
content = models.TextField()
link = models.URLField(max_length=500)
date = models.DateTimeField()
rank = models.ManyToManyField('EntryRank', related_name='entry_rank')
is_read = models.BooleanField(default=False)
is_ignored = models.BooleanField(default=False)
class RSSFeed(models.Model):
url = models.URLField(max_length=500)
title = models.CharField(max_length=275)
entries = models.ManyToManyField('Entry', blank=True)
last_update = models.DateTimeField(auto_now_add=False, null=True, blank=True)
class SomeUser(models.Model):
user = models.ForeignKey('auth.User')
rss_feeds = models.ManyToManyField('RSSFeed', blank=True)
words = models.TextField(blank=True)
的問題是,我需要排序rank
條目,並在某種程度上被某些用戶篩選行列。
比方說,有2個用戶:User A
和User B
有2項:
Entry1: User A: 0.1
Entry1: User B: 0.12
Entry2: User A: 0.06
Entry2: User B: 0.2
在這種情況下,我需要的條目爲每個用戶單獨排序。
所以User A
應該看到列表,如:
Entry1 Entry2
而且User B
:
Entry2 Entry1
在我需要order_by
分別由一定EntryRank
秒。
到目前爲止,我有:
Entry.objects.all().order_by('-rank__value')
難道
Entry
和SomeUsers
引用您得到您的回答,如果不是標誌作爲證明是。 – ancho 2014-10-10 06:54:59