动态创建联系人表单的django cms插件。
cmsplugin_contact_plus的Python项目详细描述
#关于cmsplugin_contact_plus
[cmsplugin contact plus](https://github.com/arteria/cmsplugin-contact-plus/)允许您为Django CMS项目构建表单
,只需花费最少的精力即可按照所需的顺序准确地生成所需的字段。
除了常规输入字段之外,还有"自动"字段,例如提交推荐页或其他隐藏值。
表单将提交到每个表单定义的电子邮件地址。这允许使用一个简单的插件覆盖许多用例。
v1.3.5中的插件兼容django>;=1.5
quickstart
<1。要从[pypi]安装(https://pypi.python.org/pypi/cmsplugin-contact-plus/),请在virtualenv中运行
````
pip install cmsplugin-contact-plus
```
,或者从github获取最新的提交,
```
pip安装-e git+git://github.com/arteria/cmsplugin contact plus.git egg=cmsplugin contact plus
````
2.cmsplugin contact plus需要https://github.com/iambrandontaylor/django-admin-sortable作为依赖项。请查看[自述文件](https://github.com/iambrandontaylor/django admin sortable/blob/master/readme.md)中的"支持的django版本"、"安装"和"配置"部分。
3。将"cmsplugin\u contact\u plus"和"adminsortable"放入已安装的应用程序"settings.py"部分,并验证是否也设置了[管理员](https://docs.djangoproject.com/en/dev/ref/settings/\admins)设置。
4。别忘了迁移数据库。
5.适当配置django的[电子邮件设置](https://docs.djangoproject.com/en/1.8/topics/e mail/快速示例)。
``(https://docs.djangoproject.com/en/dev/ref/settings/default from email)在"项目设置"中从特定地址发送电子邮件。否则,将使用Django的默认"webmaster@localhost"。
例如,如果标签是"your email",然后设置"contact_plus_reply_email_label="your-email"`"--基本上它是用于查找回复电子邮件地址的段式字段标签。
`` contact_plus_send_copy_to_reply_email ``到'true'。如果存在标签为"email"的字段,则此电子邮件将用作cc头。
默认为"必需"。
在项目设置中指定模板选项如下:
``python
cmsplugin_contact_plus_templates=[
('cmsplugin_contact_plus/contact.html','contact form'),
('cmsplugin_contact_plus/contact_newsletter.html','newsletter form'),
]
```
确保Django可以加载模板。
与charfieldwithvalidator字段一起使用的函数](https://docs.djangoproject.com/en/dev/ref/validators/)。应为字符串列表,每个字符串应通过其完整路径指向验证程序函数。例如:
``python
cmsplugin_contact_form_validators=[
`myproject.utils.validators.phone_number_validators',
]
`````
将"captcha"添加到"已安装的"应用程序中,并定义"recaptcha"公钥和"recapt"cha_private_key`如[django recaptcha's readme]所述(https://github.com/praekelt/django recaptcha/blob/develop/readme.rst)。每页支持一个recaptcha实例。
确保"settings.py"文件中的"templates.options.loaders"(https://docs.djangoproject.com/en/1.8/ref/templates/upgrading/"the templates settings")列表中添加了"django.template.loaders.app_directories.loader"。同样,如果您的django版本是<;1.8,请确保上面提到的加载程序在您的[`template_loaders`]列表中(https://docs.djangoproject.com/en/1.8/ref/settings/template loaders)。
数据库
-多种语言:当前英语和西班牙语翻译
-概括和简单的数学验证
-django cms 3.0兼容
-模板支持
-跟踪/传递隐藏数据
-信号
-媒体上载的多个文件和图像字段
-处理多个表格位于同一页
注意
-Django CMS>提供迁移;=3.0.6因为我们依赖于[这个](https://github.com/divio/django-cms/blob/3.0.6/cms/migrations_django/0003_auto_20140926_2347.py)迁移文件。
-如果"from.is_multipart"为true(=表单有附加文件),则无法收集数据
-如果手动呈现表单字段,请确保其名称为:`name={field.label slugify}`。这是正确验证表单所必需的。
,assp,?
-允许在不同页面上重复使用表单。
-添加可选的蜜罐字段支持。
-支持更多语言
-(您在这里的伟大功能)
cmsplugin contact plus是免费软件。如果您觉得有用并想回馈,请考虑使用[比特币](https://blockchain.info/payment_request)捐款?地址= 1AJKBQDCNKRZXI91M1KKPXH4T4BJ4HU4)或[ PayPal ](http://www. PayPal.Me/ActuiaMbh)。谢谢您!|
----变更日志
08。2017
-在收件人电子邮件中显示安全值和优化布尔字段
1.3.11-27。04。2017
-添加输入占位符
1.3.10-12。04。2017
-添加datefield和datetimefield
1.3.9-10。04。2017
-csv导出:恢复python 2兼容性
1.3.8-10。04。2017
-csv导出:正确序列化布尔字段
1.3.7-22。03。2017
-在电子邮件和联系人记录中正确引用媒体URL
1.3.6-21。03。2017
-删除未记录的模板自动发现功能
**升级**:如果您依赖Contact Plus自动发现多个表单模板选项,请确保您的设置中明确列出了这些选项,如下所述:https://github.com/arteria/cmsplugin contact plus cmsplugin contact u plus templates
1.3.5-22。02。2017年
-删除django 1.4支持
-将https://github.com/centralniak/django-inline-ordering-dependency替换为https://github.com/iambandontaylor/django-admin-sortable。
**升级**:从"已安装的应用"中删除"inline-ordering",改为添加"adminsortable"。为了确保新的依赖项与项目的django版本兼容,请查看[自述文件](https://github.com/iambandontaylor/django admin sortable/blob/master/readme.md)中的"支持的django版本"、"安装"和"配置"部分。-07。12。2016
-修复了"manifest.in"。区域设置文件现在正确了包括
1.3.1-07。11。2016
-添加了一个缺失的迁移
1.3.0-10。10。2016
-将插件字段"submit"重命名为"submit"以实现Django CMS 3.3/3.4兼容性。请迁移数据库并更新模板。
1.2.7-29。03。2016
-法文翻译
-修复setuptools兼容性问题
1.2.6-05。01。2015
-添加了一个charfieldwithvalidator字段,该字段支持验证器
-使用插件设置中定义的电子邮件主题
-设置联系人表单的"必需"css类
-使用更具体的设置"来自电子邮件的联系人"并使用"来自电子邮件的默认"作为回退
1.2.5-10。11。2015
-处理同一页上的多个表单。有关详细信息,请参阅两个相关提交[7749D44](https://github.com/arteria/cmsplugin-contact-plus/commit/7749D44D39F1B106A1B4C98065FAB7A6A810A37)和[B8793F7](https://github.com/arteria/cmsplugin-contact-plus/commit/B8793F7BC0CE573BED1BB9FFA20F9B87191FA8B)。请修改模板。
03。2015
-多个文件和图像字段/上载文件和图像,上载将直接放入"媒体根目录"。
11。2014
-增加西班牙语翻译
-支持django 1.7\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\>-简单数学的整合验证码(pr 16)
1.1.10
-删除无序数据(清除的数据)。现在改用有序数据。
-固定排版
<1.1.9
-fixed lower()vs.slugify(),用于密钥查找。
<1.1.1.1.8
-电子邮件中的字段顺序现在等于定义。
<1.1.1.1.7
<1.1.1.7
<-Django CMS 3.0缓存兼容性。
###1.1.6
-错误修复,缺少模板信息,https://github.com/arteria/cmsplugin contact plus/commit/1fa9236
参见signals.py.
-多模板支持,在项目设置中定义
````
cmsplugin_contact_plus_templates=[
('cmsplugin_contact_plus/contact.html','contact.html'),
('cmsplugin_contact_plus/hello.html','hello.html'),
```
1.1.4
-为pypi修改了打包。
-为pypi上载脚本。内部注意:只要执行` ` ` `./upload to pypi.sh`。
<1.1.3
-更好的电子邮件可读性。
<1.1.1.2
-pypi的修补版本,更正了清单。在中,请参阅问题4。
<1.1.1.1.1
-为pypi.1.1.1.1
-为pypi.sh`.sh` `.sh` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `模板im manifest.in,修复问题4。
###1.1.0
-隐藏字段的通用查询参数(get key)。在"将其他隐藏数据附加到表单"中使用此选项。slugified标签用于get参数中的密钥查找。例如:
标签是"最喜欢的颜色",而url中的查找是基于www.example.com中的"最喜欢的颜色"完成的?favorite color=blue将把{…,u'favorite-color':'blue',…}传递到电子邮件。
\1.0.4
-如果在"settings.py"中未定义"admins",则修复默认"from email address"。(第2期)
-修复了输入错误并添加了翻译标记。
1.0.3
-改进了文档
-添加了创建文本区域的"自动文本区域"快捷方式。注意:当前插件中定义的小部件被忽略。
-隐藏的"引用页"字段。从请求中读取引用。
-一般隐藏字段。与javascript/jquery结合使用,将附加数据附加到发送的表单通过电子邮件。
例如,"charfield as hiddeninput"的字段标签命名为"object description"。
使用标签名称,输入字段的ID将为"id_object-description",名称"object description"。
使用jquery存储数据非常简单。
$(''id''u object-description').val('hello hidden world');//"hello hidden world"字符串也将通过电子邮件发送。
1.0.2
setup.py
###1.0.1
修复了setup.py中的缩进错误
这个插件是在[cmsplugin戋contact]的fork(https://github.com/rtpm/cmsplugin戋contact)上构建的。夸奖!
[cmsplugin contact plus](https://github.com/arteria/cmsplugin-contact-plus/)允许您为Django CMS项目构建表单
,只需花费最少的精力即可按照所需的顺序准确地生成所需的字段。
除了常规输入字段之外,还有"自动"字段,例如提交推荐页或其他隐藏值。
表单将提交到每个表单定义的电子邮件地址。这允许使用一个简单的插件覆盖许多用例。
v1.3.5中的插件兼容django>;=1.5
quickstart
<1。要从[pypi]安装(https://pypi.python.org/pypi/cmsplugin-contact-plus/),请在virtualenv中运行
````
pip install cmsplugin-contact-plus
```
,或者从github获取最新的提交,
```
pip安装-e git+git://github.com/arteria/cmsplugin contact plus.git egg=cmsplugin contact plus
````
2.cmsplugin contact plus需要https://github.com/iambrandontaylor/django-admin-sortable作为依赖项。请查看[自述文件](https://github.com/iambrandontaylor/django admin sortable/blob/master/readme.md)中的"支持的django版本"、"安装"和"配置"部分。
3。将"cmsplugin\u contact\u plus"和"adminsortable"放入已安装的应用程序"settings.py"部分,并验证是否也设置了[管理员](https://docs.djangoproject.com/en/dev/ref/settings/\admins)设置。
4。别忘了迁移数据库。
5.适当配置django的[电子邮件设置](https://docs.djangoproject.com/en/1.8/topics/e mail/快速示例)。
``(https://docs.djangoproject.com/en/dev/ref/settings/default from email)在"项目设置"中从特定地址发送电子邮件。否则,将使用Django的默认"webmaster@localhost"。
例如,如果标签是"your email",然后设置"contact_plus_reply_email_label="your-email"`"--基本上它是用于查找回复电子邮件地址的段式字段标签。
`` contact_plus_send_copy_to_reply_email ``到'true'。如果存在标签为"email"的字段,则此电子邮件将用作cc头。
默认为"必需"。
在项目设置中指定模板选项如下:
``python
cmsplugin_contact_plus_templates=[
('cmsplugin_contact_plus/contact.html','contact form'),
('cmsplugin_contact_plus/contact_newsletter.html','newsletter form'),
]
```
确保Django可以加载模板。
与charfieldwithvalidator字段一起使用的函数](https://docs.djangoproject.com/en/dev/ref/validators/)。应为字符串列表,每个字符串应通过其完整路径指向验证程序函数。例如:
``python
cmsplugin_contact_form_validators=[
`myproject.utils.validators.phone_number_validators',
]
`````
将"captcha"添加到"已安装的"应用程序中,并定义"recaptcha"公钥和"recapt"cha_private_key`如[django recaptcha's readme]所述(https://github.com/praekelt/django recaptcha/blob/develop/readme.rst)。每页支持一个recaptcha实例。
确保"settings.py"文件中的"templates.options.loaders"(https://docs.djangoproject.com/en/1.8/ref/templates/upgrading/"the templates settings")列表中添加了"django.template.loaders.app_directories.loader"。同样,如果您的django版本是<;1.8,请确保上面提到的加载程序在您的[`template_loaders`]列表中(https://docs.djangoproject.com/en/1.8/ref/settings/template loaders)。
数据库
-多种语言:当前英语和西班牙语翻译
-概括和简单的数学验证
-django cms 3.0兼容
-模板支持
-跟踪/传递隐藏数据
-信号
-媒体上载的多个文件和图像字段
-处理多个表格位于同一页
注意
-Django CMS>提供迁移;=3.0.6因为我们依赖于[这个](https://github.com/divio/django-cms/blob/3.0.6/cms/migrations_django/0003_auto_20140926_2347.py)迁移文件。
-如果"from.is_multipart"为true(=表单有附加文件),则无法收集数据
-如果手动呈现表单字段,请确保其名称为:`name={field.label slugify}`。这是正确验证表单所必需的。
,assp,?
-允许在不同页面上重复使用表单。
-添加可选的蜜罐字段支持。
-支持更多语言
-(您在这里的伟大功能)
cmsplugin contact plus是免费软件。如果您觉得有用并想回馈,请考虑使用[比特币](https://blockchain.info/payment_request)捐款?地址= 1AJKBQDCNKRZXI91M1KKPXH4T4BJ4HU4)或[ PayPal ](http://www. PayPal.Me/ActuiaMbh)。谢谢您!|
----变更日志
08。2017
-在收件人电子邮件中显示安全值和优化布尔字段
1.3.11-27。04。2017
-添加输入占位符
1.3.10-12。04。2017
-添加datefield和datetimefield
1.3.9-10。04。2017
-csv导出:恢复python 2兼容性
1.3.8-10。04。2017
-csv导出:正确序列化布尔字段
1.3.7-22。03。2017
-在电子邮件和联系人记录中正确引用媒体URL
1.3.6-21。03。2017
-删除未记录的模板自动发现功能
**升级**:如果您依赖Contact Plus自动发现多个表单模板选项,请确保您的设置中明确列出了这些选项,如下所述:https://github.com/arteria/cmsplugin contact plus cmsplugin contact u plus templates
1.3.5-22。02。2017年
-删除django 1.4支持
-将https://github.com/centralniak/django-inline-ordering-dependency替换为https://github.com/iambandontaylor/django-admin-sortable。
**升级**:从"已安装的应用"中删除"inline-ordering",改为添加"adminsortable"。为了确保新的依赖项与项目的django版本兼容,请查看[自述文件](https://github.com/iambandontaylor/django admin sortable/blob/master/readme.md)中的"支持的django版本"、"安装"和"配置"部分。-07。12。2016
-修复了"manifest.in"。区域设置文件现在正确了包括
1.3.1-07。11。2016
-添加了一个缺失的迁移
1.3.0-10。10。2016
-将插件字段"submit"重命名为"submit"以实现Django CMS 3.3/3.4兼容性。请迁移数据库并更新模板。
1.2.7-29。03。2016
-法文翻译
-修复setuptools兼容性问题
1.2.6-05。01。2015
-添加了一个charfieldwithvalidator字段,该字段支持验证器
-使用插件设置中定义的电子邮件主题
-设置联系人表单的"必需"css类
-使用更具体的设置"来自电子邮件的联系人"并使用"来自电子邮件的默认"作为回退
1.2.5-10。11。2015
-处理同一页上的多个表单。有关详细信息,请参阅两个相关提交[7749D44](https://github.com/arteria/cmsplugin-contact-plus/commit/7749D44D39F1B106A1B4C98065FAB7A6A810A37)和[B8793F7](https://github.com/arteria/cmsplugin-contact-plus/commit/B8793F7BC0CE573BED1BB9FFA20F9B87191FA8B)。请修改模板。
03。2015
-多个文件和图像字段/上载文件和图像,上载将直接放入"媒体根目录"。
11。2014
-增加西班牙语翻译
-支持django 1.7\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\>-简单数学的整合验证码(pr 16)
1.1.10
-删除无序数据(清除的数据)。现在改用有序数据。
-固定排版
<1.1.9
-fixed lower()vs.slugify(),用于密钥查找。
<1.1.1.1.8
-电子邮件中的字段顺序现在等于定义。
<1.1.1.1.7
<1.1.1.7
<-Django CMS 3.0缓存兼容性。
###1.1.6
-错误修复,缺少模板信息,https://github.com/arteria/cmsplugin contact plus/commit/1fa9236
参见signals.py.
-多模板支持,在项目设置中定义
````
cmsplugin_contact_plus_templates=[
('cmsplugin_contact_plus/contact.html','contact.html'),
('cmsplugin_contact_plus/hello.html','hello.html'),
```
1.1.4
-为pypi修改了打包。
-为pypi上载脚本。内部注意:只要执行` ` ` `./upload to pypi.sh`。
<1.1.3
-更好的电子邮件可读性。
<1.1.1.2
-pypi的修补版本,更正了清单。在中,请参阅问题4。
<1.1.1.1.1
-为pypi.1.1.1.1
-为pypi.sh`.sh` `.sh` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `模板im manifest.in,修复问题4。
###1.1.0
-隐藏字段的通用查询参数(get key)。在"将其他隐藏数据附加到表单"中使用此选项。slugified标签用于get参数中的密钥查找。例如:
标签是"最喜欢的颜色",而url中的查找是基于www.example.com中的"最喜欢的颜色"完成的?favorite color=blue将把{…,u'favorite-color':'blue',…}传递到电子邮件。
\1.0.4
-如果在"settings.py"中未定义"admins",则修复默认"from email address"。(第2期)
-修复了输入错误并添加了翻译标记。
1.0.3
-改进了文档
-添加了创建文本区域的"自动文本区域"快捷方式。注意:当前插件中定义的小部件被忽略。
-隐藏的"引用页"字段。从请求中读取引用。
-一般隐藏字段。与javascript/jquery结合使用,将附加数据附加到发送的表单通过电子邮件。
例如,"charfield as hiddeninput"的字段标签命名为"object description"。
使用标签名称,输入字段的ID将为"id_object-description",名称"object description"。
使用jquery存储数据非常简单。
$(''id''u object-description').val('hello hidden world');//"hello hidden world"字符串也将通过电子邮件发送。
1.0.2
setup.py
###1.0.1
修复了setup.py中的缩进错误
这个插件是在[cmsplugin戋contact]的fork(https://github.com/rtpm/cmsplugin戋contact)上构建的。夸奖!