自定义的django render_comment_form字段

问题描述:

(使用django.contrib.comments)自定义的django render_comment_form字段

放置时间:

{% load comments %} 
{% render_comment_form for event %} 

到模板中。它呈现一个表格:Name,email,urlcomment字段。

有没有办法让comment字段出现,并在发布数据时隐藏其他字段?或者我应该自己重新创建表单?

非常感谢您的建议。

您可以将属性is_hidden添加到评论表单的一个字段,并为其指定值True。在这种情况下,只会打印该字段的值,但我不确定这是您想要的。

但幸运的是,您可以自己修改表单。该代码在以下位置搜索模板:

template_search_list = [ 
    "comments/%s/%s/form.html" % (ctype.app_label, ctype.model), 
    "comments/%s/form.html" % ctype.app_label, 
    "comments/form.html" 
] 

您可以查看form.htmlhere当前内容和render_comments_form模板标签here)的代码。

如果您想修改整个网站的表单,那么您可以创建自己的comments/form.html版本,但是您也可以为特定的Django应用程序甚至Django应用程序的特定模型创建form.htm。在该表单模板中,您可以自定义显示哪些字段以及隐藏哪些字段。

+0

感谢您的正确方向! – Modelesq 2012-07-13 20:12:38

刚加入这一行你form.html页: -

{% if field.name != "name" and field.name != "email" and field.name != "url" %} 

日子会把你需要添加像这样: -

{% if field.is_hidden %} 
<div>{{ field }}</div> 
{% else %} 
{% if field.name != "name" and field.name != "email" and field.name != "url" %} 
{% if field.errors %}{{ field.errors }}{% endif %} 

...它为我工作..无需做其他任何事..我只想要评论框,而不是别的!