Django reCAPTCHA 表单字段/小部件应用程序。
项目描述
Django reCAPTCHA 表单字段/小部件集成应用程序。
安装
安装或添加 nobot 到您的Python路径。
将 nobot 添加到您的 INSTALLED_APPS 设置。
在项目的 settings.py 文件中添加一个 NOBOT_RECAPTCHA_PUBLIC_KEY 设置。这是reCAPTCHA提供的公钥,即
NOBOT_RECAPTCHA_PUBLIC_KEY = '76wtgdfsjhsydt7r5FFGFhgsdfytd656sad75fgh'
可以在运行时通过在构建 ReCaptchaField 时传递 public_key 参数来单独指定,请参阅下面的字段使用说明。
在项目的 settings.py 文件中添加一个 NOBOT_RECAPTCHA_PRIVATE_KEY 设置。这是reCAPTCHA提供的私钥,即
NOBOT_RECAPTCHA_PRIVATE_KEY = '98dfg6df7g56df6gdfgdfg65JHJH656565GFGFGs'
可以在运行时通过在构建 ReCaptchaField 时传递 private_key 参数来单独指定,请参阅下面的字段使用说明。
用法
字段
将reCAPTCHA添加到表单的最快方法是使用提供的 ReCaptchaField 字段类型。将渲染 ReCaptcha 小部件,该字段将自动验证,无需您采取任何进一步操作。例如
from django import forms from nobot.fields import ReCaptchaField class FormWithCaptcha(forms.Form): captcha = ReCaptchaField()
reCAPTCHA小部件支持多个JavaScript选项变量,用于自定义小部件的行为,例如主题和语言。您可以通过传递一个包含选项字典的attr参数来将这些选项传递给小部件,即传递给ReCaptchaField。
captcha = ReCaptchaField(attrs={'theme' : 'clean'})
验证码客户端接收键/值对,并在JavaScript中写入RecaptchaOptions值。
测试
为了获取包含reCAPTCHA字段的有效表单(离线),可以模拟ReCaptchaClient或HumanCaptchaClient的验证方法,即
import mock from nobot.client import RecaptchaResponse class MyTestClass: @mock.patch('nobot.client.HumanCaptchaClient.verify') def test_with_valid_form(self, nobot_mock): nobot_mock.return_value = RecaptchaResponse(is_valid=True, error_code=None) # ... # Test your form or view # recaptcha won't 'spoil' test validation offline now
鸣谢
最初由Praekelt Consulting以django-recaptcha的名称开发。为了更好的可测试性和可扩展性而分支。作者 ==
nobot之前以django-recaptcha的名称开发,并受Praekelt Foundation版权保护。以下版权声明适用于重命名前的版本:“版权(c)Praekelt Foundation
包维护者
Christopher Grebs
Praekelt Consulting
Shaun Sephton
Peter Pistorius
Hedley Roos
bTaylor Design
其他
Brooks Travis
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
构建分布
nobot-0.7.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 12c0ad7d62ad0eb65456ba88e796a5dcb21b13d940f71f4bcb28d4f84cb0106a |
|
MD5 | c12c9418857a180659ae47c2195f6ce9 |
|
BLAKE2b-256 | 9c57e813d603f778f0cb6f75aeffdb085e8c65daa5b1b32789b9fba973826835 |
nobot-0.7-py2.py3-none-any.whl的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a724b877bbb6ad2c9614a6461c86125ab950c4e8a9ce27355d39703409dedb6a |
|
MD5 | a435c27e029ed470f58462811f809b1d |
|
BLAKE2b-256 | d3f750f173175039149bc42edbe056f1101c03fbbb997adade8695de259daeb5 |