Я получаю некоторые сообщения, используя order_by в моем цикле for, как указано ниже
logged_user = Profile.objects.get(user=request.user.id)
followings = logged_user.follows.all()
all_posts = []
for foll in followings:
all_posts += Posts.objects.all().filter(user_profile=foll.id).order_by('trending_ratio')
Он сортирует сообщения для каждого пользователя, но я хочу отсортировать все сообщения на основе их trending ratio
.например, приведенный выше код сортирует все сообщения пользователя user1 по их tending_ratio
, затем сортирует сообщения пользователя user2 по trending_ratio
и т. д.
Но я просто хочу выполнить сортировку после всех сообщений извсе пользователи хранятся в all_posts, т.е. all_posts.order_by('trending_ratio')
после выполнения цикла for for
Примечание: 1. Я следую за полем ManyToMany
в модели Posts.2. followings - список всех пользователей, за которыми вошел зарегистрированный пользователь models.py
class Posts(models.Model):
user_profile = models.ForeignKey(Profile, on_delete=models.CASCADE)
trending_ratio = models.FloatField(default=1)
...