官方文档:http://django-simple-captcha.readthedocs.io/en/latest/usage.html#installation
github:https://github.com/mbi/django-simple-captcha
安装部署
版本:django 1.9
1
|
pip
install
django-simple-captcha==0.4.6
|
- settings.py配置,加入captcha
1
2
3
4
5
6
7
8
9
|
INSTALLED_APPS = [
'django.contrib.admin'
,
'django.contrib.auth'
,
'django.contrib.contenttypes'
,
'django.contrib.sessions'
,
'django.contrib.messages'
,
'django.contrib.staticfiles'
,
'captcha'
,
]
|
- urls.py配置
加入url(r'^captcha/', include('captcha.urls')),
1
2
3
4
5
6
7
|
from django.conf.urls
import
url, include
from django.contrib
import
admin
urlpatterns = [
url(r
'^admin/'
, admin.site.urls),
url(r
'^captcha/'
, include(
'captcha.urls'
)),
]
|
- 数据库同步
1
2
|
makemigrations
migrate
|
应用场景
- form定义
app下自定义froms.py文件,创建一个注册form
1
2
3
4
5
6
7
|
from django
import
forms
from captcha.fields
import
CaptchaField
class RegisterForm(forms.Form):
email = forms.EmailField(required=True)
password = forms.CharField(required=True, min_length=5)
captcha = CaptchaField(error_messages={
"invalid"
: u
"验证码错误"
})
|
- views.py代码
1
2
3
4
5
6
7
|
from django.views.generic.base
import
View
class RegisterView(View):
def get(self, request):
register_form = RegisterForm()
return
render(request,
"register.html"
, {
"register_form"
: register_form})
|
- html页面引用
1
|
{{ register_form.captcha }}
|