個人指導サイトQ/A掲示板の作成
1521 ワード
Todoに基づいて完成し、学生たちが質問や回答を残すことができるQnA掲示板.
モデルはQuestionクラスとAnswerクラスに分けられ、スナップショットを問題にアタッチし、ForiegnKeyを使用してqessionに関連付ける画像クラスが作成されます.
なお、Imageクラスを単独で作成せずにQuestionクラスの下部に入れると、1枚の写真しか添付できません!
モデルはQuestionクラスとAnswerクラスに分けられ、スナップショットを問題にアタッチし、ForiegnKeyを使用してqessionに関連付ける画像クラスが作成されます.
class Question(models.Model):
subject = models.CharField(max_length=200, verbose_name='질문제목')
content = models.TextField(verbose_name='질문내용')
create_date = models.DateTimeField(auto_now=True, verbose_name='작성일시')
author = models.ForeignKey(User, on_delete=models.CASCADE)
modify_date = models.DateTimeField(auto_now=True)
def __str__(self):
return self.subject
def get_absolute_url(self):
return reverse("board:detail", kwargs={"question_id": self.id})
class Answer(models.Model):
question = models.ForeignKey(Question, on_delete=models.CASCADE, verbose_name='답변제목')
content = models.TextField(verbose_name='답변내용')
create_date = models.DateTimeField(auto_now=True, verbose_name='작성일시')
author = models.ForeignKey(User, on_delete=models.CASCADE)
modify_date = models.DateTimeField(auto_now=True)
class Image(models.Model):
question = models.ForeignKey(Question, on_delete=models.CASCADE, verbose_name='imagepost')
image= models.ImageField(upload_to='board/images', verbose_name='photo', blank=True)
このように構成すると、Answer、画像はQuesionに属するidから削除され、qustionを削除するときに一緒に削除されます(on delete=models.CASCDE)なお、Imageクラスを単独で作成せずにQuestionクラスの下部に入れると、1枚の写真しか添付できません!
Reference
この問題について(個人指導サイトQ/A掲示板の作成), 我々は、より多くの情報をここで見つけました https://velog.io/@polaris0027/개인-과외사이트-QA-게시판-만들기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol