나는 Product
및 Tag
과 manytomany 관계를 갖고 있으며, 내 태그 세트와 가장 일치하는 제품을 찾고 싶습니다. django manytomany order_by 관계 수
class Product(models.Model):
def __str__(self):
return self.title
title = models.CharField(max_length=200)
price = models.IntegerField()
tags = models.ManyToManyField(Tag, related_name="products", blank=True)
class Tag(models.Model):
def __str__(self):
return self.name
name = models.CharField(max_length=50)
나는
tag
s의 검색어 세트가 나는 제품이 선택된 태그의 대부분이 중로 내 제품을 주문하려면?
이렇게하는 데 깔끔한 트릭이 있습니까? 아니면 모든 제품을 쿼리 한 다음 직접 정렬해야합니까? 예를 들어
, 내가 3 개 태그와 검색어 세트가있는 경우 : STEM
, Programming
, K-6
나는 제품이 있습니다
Computer Science Book (Programming),
Engineering Puzzle (K-6, STEM),
Cookie Cutters (K-6),
Rocket (STEM, K-6, Programming),
Backpack (K-6)
내가하지만,이 순서로 그 같은 항목을 반환 할를 :
Rocket (STEM, K-6, Programming),
Engineering Puzzle (K-6, STEM),
Computer Science Book (Programming),
Cookie Cutters (K-6),
Backpack (K-6)