Вы можете указать поля модели только в Meta.ordering , поэтому, если вы хотите реализовать описанную логику, вам придется прибегнуть к custom manager .
* 1006.* EDIT:
Вы можете добавить какое-либо поле weight
к вашей Stop
модели, обновить это поле вместе с обновлением days_open
, и тогда вы сможете использовать ordering = ['-weight ']
Кроме того, что-то подобное может соответствовать вашим целям:
Stop.objects.annotate(weight=models.Sum('weekday__weight')).order_by('-weight')
- конечно, для этого потребуется добавить поле weight
к модели Weekday
ипредварительно заполнив его для всех записей.Это также может быть реализовано как метод в пользовательском менеджере, о котором я упоминал выше.