📅  最后修改于: 2020-10-25 10:05:14             🧑  作者: Mango
在开始之前,请注意,自1.5版本起,不建议使用Django Comments框架。现在您可以使用外部功能,但是如果您仍然想使用它,则它仍包含在1.6和1.7版中。从版本1.8开始,它已经不存在了,但是您仍然可以在其他GitHub帐户上获得代码。
评论框架使您可以轻松地将评论附加到应用程序中的任何模型。
要开始使用Django注释框架-
编辑项目settings.py文件,并将django.contrib.sites和django.contrib.comments添加到INSTALLED_APPS选项-
INSTALLED_APPS += ('django.contrib.sites', 'django.contrib.comments',)
获取站点ID-
>>> from django.contrib.sites.models import Site
>>> Site().save()
>>> Site.objects.all()[0].id
u'56194498e13823167dd43c64'
设置您在settings.py文件中获得的ID-
SITE_ID = u'56194498e13823167dd43c64'
同步数据库,以创建所有注释表或集合-
python manage.py syncdb
将评论应用程序的URL添加到项目的urls.py-
from django.conf.urls import include
url(r'^comments/', include('django.contrib.comments.urls')),
现在我们已经安装了框架,让我们更改hello模板以跟踪有关Dreamreal模型的注释。我们将为特定的Dreamreal条目列出并保存评论,该条目的名称将作为参数传递到/ myapp / hello URL。
class Dreamreal(models.Model):
website = models.CharField(max_length = 50)
mail = models.CharField(max_length = 50)
name = models.CharField(max_length = 50)
phonenumber = models.IntegerField()
class Meta:
db_table = "dreamreal"
def hello(request, Name):
today = datetime.datetime.now().date()
daysOfWeek = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
dreamreal = Dreamreal.objects.get(name = Name)
return render(request, 'hello.html', locals())
{% extends "main_template.html" %}
{% load comments %}
{% block title %}My Hello Page{% endblock %}
{% block content %}
Our Dreamreal Entry:
Name : {{dreamreal.name}}
Website : {{dreamreal.website}}
Phone : {{dreamreal.phonenumber}}
Number of comments :
{% get_comment_count for dreamreal as comment_count %} {{ comment_count }}
List of comments :
{% render_comment_list for dreamreal %}
{% render_comment_form for dreamreal %}
{% endblock %}
最后映射到我们的hello视图的URL-
url(r'^hello/(?P\w+)/', 'hello', name = 'hello'),
现在,
在我们的模板(hello.html)中,将注释框架加载为− {%load comments%}
我们通过视图获取Dreamreal对象传递的评论数-{Dreamreal的%get_comment_count为comment_count%}
我们获得了对象的注释列表-{%dreamreal%的render_comment_list}
我们显示默认的注释表单-{%dreamreal%的render_comment_form}
访问/ myapp / hello / steve时,您将获得名称为Steve的Dreamreal条目的注释信息。访问该URL将使您-
在发布评论时,您将被重定向到下一页-
如果再次进入/ myapp / hello / steve,您将看到以下页面-
如您所见,评论的数量现在为1,并且评论列表行下有该评论。