[REAL Python – Django] – “Django – 태그 구현”
[REAL Python – Django] – “Django – 태그 구현”
3월 12, 2022
태그와 포스트는 다대다(Many-to-many)
관계이다.
지금까지 구현한 블로그의 카테고리 시스템은 카테고리 하나에 글 여러 개가 연결될 수 있었습니다. 예컨대 (파이썬)이라는 카테고리 안에(파이썬은 어떤 언어인가?) 나 (파이썬의 자료형) 과 같은 글들이 들어갈 수 있었죠. 하지만 이번에 구현할 태그 시스템은 태그 여러 개에 게시글 여러 개가 연결될 수 있습니다.
태그와 게시물 간의 관계를 간략하게 나타낸 이미지입니다. 한 개의 태그는 여러 개의 화살표를 쏠 수 있고, 한 개의 게시물 또한 여러 개의 화살표를 쏠 수 있습니다. 카테고리 또한 여러 개의 화살표를 쏠 수 있었지만, 게시물이 받을 수 있는 화살표는 하나 뿐이었다는 점이 다릅니다.
태그 모델 작성하고 포스트와 연결
카테고리와 태그 시스템은 게시물(포스트)과의 관계가 다대다이냐 다대일이냐였습니다. 모델을 작성해 주고 아래의 코드를 포스트 클래스 아래에 작성해주었습니다.
tags = models.ManyToManyField(Tag, blank=True)
ManyToManyField
를 통해서 연결해 주었습니다.