Есть модель типа

class Item(models.Model):
    title = models.CharField("заголовок", max_length=50)
    date_created = models.DateTimeField("дата создания", default=timezone.now)
    raised_to = models.DateTimeField("поднято до", blank=True, null=True)

    class Meta:
        ordering = ['-date_created']

Мне нужно чтобы сортировка была в основном по дате, но некоторые item'ы могли "подниматься в топ".

Вместо флажка типа is_top (BooleanField), нужно чтобы item поднимался до определенной даты raised_to (например до 26.03.2016).

Item'ы с истекшим raised_to должны сортироваться в общем порядке, по date_created, поэтому сортировка просто по ['-raised_to', '-date_created'] не подходит.

Я пришел к варианту

Item.objects.all().extra(select={'is_raised': '(raised_to IS NOT NULL) AND (raised_to > %s)'},
    select_params=[timezone.now()],
    order_by=['-is_raised', '-date_created'])

но какой-то он не красивый.

Есть ли более django-way вариант?