1
이미지 및 위치와 연결할 수있는 태그가 있습니다.SQL 개수, 그룹 및 조인 쿼리에 해당하는 ORM을 사용하는 방법은 무엇입니까?
- 태그는 고유합니다.
- 이미지와 위치에 많은 태그가있을 수 있습니다.
- Tag_Item 모델은 모든 것을 연결하는 데 사용됩니다.
다음은 모델입니다 :
LOCATIONS = (
('US', 'USA'),
('UK', 'United Kingdom'),
('FR', 'France'),
)
class Location(models.Model):
location = models.CharField(choices=LOCATIONS)
class Image(models.Model):
image = models.ImageField(verbose_name='Image')
class Tag(models.Model):
tag = models.CharField(max_length=150, unique=True)
class Tag_Item(models.Model):
tag = models.ForeignKey(Tag, on_delete=models.CASCADE)
location = models.ForeignKey(Location, null=True, blank=True, default=None)
image = models.ForeignKey(Image, null=True, blank=True, default=None)
created_at = models.DateTimeField(auto_now_add=True)
내가 미국을위한 다섯 개 가지 가장 흔한 태그를 선택 의미 쿼리를 작성하려고합니다.
내가 SQL에 다음과 같은 라인을 따라 뭔가를 생각하고 있었다 : 위치가 '미국'이다
- 는 태그, Tag_Item, 및 위치에 가입하세요.
- 태그별로 그룹화하십시오.
- Tag_ID (또는 그 행에있는 값)의 수로 주문하십시오.
하지만 장고 ORM에서 어떻게 전송할 수 있는지 알 수 없습니다.
그런 종류의 복잡한 관계 쿼리를 작성하는 방법에 대해 도움을 주시겠습니까?
주석 및 집계 살펴보기 https://docs.djangoproject.com/el/1.10/topics/db/aggregation/ – Johan
안녕하세요, @TomBrock 궁금한 점은 제 대답이 도움이 되었습니까? –