Как простой пример, скажем, у меня есть класс продуктаДжанго запросы - Сортировка по Тегам в общих
class Product(models.Model):
tags = models.ManyToManyField('Tag',blank=True,null=True)
Мой класс Tag выглядит как этого
class Tag(models.Model):
name = models.CharField(max_length=50, unique=True, db_index=True)
Учитывая один продукт, как бы я сортировать результат всех других продуктов по большинству распространенных тегов?
Например, я следующее:
Р1 с бирками А, В, и С
Р2 с бирками В, С
Р3 с бирками B
P4 с бирками A, B, и C
Я бы хотел, чтобы мой результирующий набор для P1 был P4, P2, P3 в этом порядке, предполагая, что мы исключаем P1 из набора результатов.
Я немного скорректировал формулировку на свой вопрос, так как считаю, что я неправильно описал свою проблему. Мои извинения. – andersra
Как вы можете видеть из моего примера выше; что вам нужно сделать, это получить соответствующие теги в списке и сравнить их с p1, например, и упорядочить их по количеству, содержащемуся в общем. Я обновил свой ответ, чтобы отразить недавно измененный вопрос. – myusuf3
Я не уверен, будет ли этот метод хорошо масштабироваться для больших наборов результатов. Я здесь не прав? – andersra