简单的应用程序,它提供可定制的电子邮件表单模板标签。您可以指定表单字段,并可选地启用专用视图来呈现反馈页。
redsolutioncms.django-simple-feedback的Python项目详细描述
快速启动
代码
将feedback添加到已安装的应用程序中
INSTALLED_APPS = [ ... 'feedback', ... ]
urlpatterns示例:
^{tt2}$
同步数据库模型运行django syncdb
在模板中
加载标记库:
^{tt4}$
在模板中插入模板标记
^{tt5}$,
其中key是反馈表单键。默认键值是default。
要求
注意,反馈使用基于jquery的ajax表单,因此需要包含jquery 在你的页面上。您可以从谷歌主机安装:
^{tt8}$
设置
- 反馈表单
- 自定义反馈表单的注册表。请参见“自定义”部分。
- 反馈表单名称
- 反馈表单名称的注册表。请参见“自定义”部分。
自定义
如果要自定义默认反馈表单或添加自己的反馈表单,则必须 使用表单创建应用程序。所有反馈表单都应该是 feedback.forms.BaseFeedbackForm。下面是自定义反馈类的示例:
from django import forms from feedback.forms import BaseFeedbackForm class OrderForm(BaseFeedbackForm): name = forms.CharField(label=u'Your name', max_length=200) email = forms.EmailField(label=u'Your Email', max_length=200) phone = forms.CharField(label=u'Phone', max_length=200) address = forms.CharField(label=u'Your address', max_length=200) date = forms.CharField(label=u'Date and time', max_length=200) file = forms.FileField(label=u'Attach the file') response = forms.CharField(label=u'Comment', max_length=500, widget=forms.Textarea(attrs={'cols':'30', 'rows':'5'})) subject = u'Custom order form'
subject属性出现在电子邮件主题中。
然后您需要将反馈表放入您的设置中。py:
FEEDBACK_FORMS-dictionary对象,描述您的 地点。每个键值对代表对象的反馈。例如:
FEEDBACK_FORMS = { 'default': 'feedback.forms.FeedbackForm', 'order': 'mysite.custom_feedback.forms.OrderForm', }
您还可以指定FEEDBACK_FORMS_NAMES选项:
FEEDBACK_FORMS_NAMES-dictionary对象,它定义在邮件列表管理界面中显示反馈表单的方式。 每个键值对代表对象的反馈。例如:
FEEDBACK_FORMS_NAMES = { 'order': 'Online order form', }
现在我们可以在模板中包含{% show_feedback order %},并获取重写的表单。
自定义模板
如果有自定义窗体类,则可以创建自定义模板。应用程序首先搜索它们。模板名称为:
- feedback/form嫒key/feedback.html,feedback/feedback.html
- 用于呈现窗体本身
- feedback/form嫒key/thankyou.html,feedback/thankyou.html
- 用于渲染成功响应
- feedback/表单密钥/email.txt,feedback/反馈信息.txt
- 用于呈现电子邮件文本
邮件列表
您可以使用管理界面为每个反馈表单指定邮件列表。默认情况下,来自所有反馈表单的消息都会发送到经理设置指定的电子邮件
新功能
0.4.1-添加了定义人性化表单名称的选项。 0.4.0-新版本。数据库中的响应已删除,邮件列表已添加。