(1) feed 테이블
(2) 유저 테이블
(3) 좋아요 테이블
(4) 댓글 테이블
class Like(models.Model):
feed_id = models.IntegerField(default=0) # 어떤 글을 좋아요 눌렀는지 알기 위해
email = models.EmailField(default='') # 좋아요 누른 사람
is_like = models.BooleanField(default=True) # 좋아요 눌렀는지
class Reply(models.Model):
feed_id = models.IntegerField(default=0)
email = models.EmailField(default='')
reply_content = models.TextField() # 댓글 내용
views.py
feed_object_list = Feed.objects.all().order_by('-id') # 피드에 있는 모든 데이터를 가져옴(쿼리셋) = select * from content_feed, 최신 글을 위한 역순 출력
feed_list = []
for feed in feed_object_list:
user = User.objects.filter(email=feed.email).first()
reply_object_list = Reply.objects.filter(feed_id=feed.id)
reply_list = []
# 댓글들
for reply in reply_object_list:
user = User.objects.filter(email=reply.email).first()
reply_list.append(dict(reply_content=reply.reply_content,
nickname=user.nickname))
# 피드
feed_list.append(dict(id=feed.id,
image=feed.image,
content=feed.content,
like_count=feed.like_count,
profile_image=user.profile_image,
nickname=user.nickname,
reply_list=reply_list
))
let feed_id = event.target.attributes.getNamedItem("feed_id").value;
let reply_id = 'reply_' + feed_id;
let reply_content = $('#' + reply_id).val();
$("#reply_list_" + feed_id).append("<div><b>{{ user.nickname }}</b> " + reply_content + "</div>")
$('#' + reply_id).val('');