여러개의 해시태그를 한 게시글에 태깅하고 싶다면,
ManyToMany
를 응용해야 한다.
class Hashtag(models.Model):
content = models.CharField("태그 내용", max_length=32, unique=True)
def __str__(self):
return self.content
먼저 models.py
에 해시태그 class
를 생성해준다.
__str__
함수는 내용이 찍혀나올 때
pk
값이 아닌 태그 이름으로 나올 수 있게 해주는 메소드다.
class Article(models.Model):
...
tags = models.ManyToManyField(Hashtag, blank=True)
그런 뒤, Article
모델 하위에 ManyToManyField
로 연결시켜준다.
게시글 하위에 tags
가 무사히 찍혀나온다!