我想在默认的Django评论模块中为textarea输入添加占位符文本。我怎样才能实现这一目标?我是否需要创建一个新的CommentForm类并引用它,或者是否可以只添加此属性?
我在init文件中的当前代码,用于评论,
from django import forms
from django.utils.translation import ugettext_lazy as _
from django.contrib.comments.forms import CommentDetailsForm
class CommentForm(CommentDetailsForm):
email = forms.EmailField(label=_("E-mail address"), required=False)
def get_form():
return CommentForm
答案 0 :(得分:1)
在__init__
形式的方法(而不仅仅是那里)中,您可以修改字段的任何属性,甚至可以修改其他类型的字段。所有字段都存储在字典self.fields
中。所以你需要做的就是:
class CommentForm(CommentDetailsForm):
email = forms.EmailField(label=_("E-mail address"), required=False)
def __init__(self, *args, **kwargs):
super(CommentForm, self).__init__(*args, **kwargs)
self.fields['field_to_add_placeholder_to'].widget.attrs['placeholder'] = "your placeholder"