添加评论

这节主要是对发表的文章的评论做工作

主要动作有,显示数据库评论->让登录用户能够写评论->将评论内容写往数据库里

一:将数据库写好的评论显示在网页上

1.{%load comments%}

加载Django自带评论系统插件,记住这是插件

2.{%get_comment_count for lfi as comment_count%}
{{comment_count}}

得到文章函数的评论数,lfi是传向网页 的变量

3.{%get_comment_list for lfi as comment_list%}
{%for comment in comment_list reversed%}
{{comment.submit_date}}
<br>
{{comment.comment}}
<br>
<hr>
{%endfor%}

显示数据库评论内容,在for语句中用的reserved关键字,是将评论内容按照时间倒序排列

二:让登录用户能够写评论

登录的用户能显示评论框,而未登录的用户 不显示评论框

添加评论_第1张图片

三:将上传数据卸载评论表里

之前导入import django_comments as comments

def detail(req,lfi_id):
	lfi=models.LFI.objects.get(id=lfi_id)
	comment=req.POST.get("comment_content")
	if comment:
		comments.models.Comment.objects.create(
			content_type_id=7,#lfi表的ID是7,表示添加的评论是卸载里表上的
			object_pk=lfi.id,#表示为lfi表中第几个元素添加评论,
			site_id=1,#和settings中配置一定
			user=req.user,#添加评论的用户,是登录用户
			comment=comment,#写上评论内容
		)
	
	return render_to_response("detail.html",{"lfi":lfi,
							"user":req.user})

django_comments实在settings.py文件中添加的APP,和app0一样

comments.models.Comment.objects.create()是创建表元素函数
 
 


你可能感兴趣的:(Web,python,django)