转自:http://www.jb51.net/article/114205.htm
urls.py
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
from django.contrib import staticfiles
from django.conf.urls import url
from django.contrib import admin
from django.conf.urls import include
from django import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/',include('ctf.urls')),
#url(r'^create_code_img/',views.create_code_img),
]
app/urls.py
urlpatterns =[
#url(r'^index$',views.ok),
url(r'^$',views.index),
url(r'^create_code_img/',views.create_code_img),
]
views.py
`def create_code_img(request):
print “1!!!!!!!!!!!!!!!!!!!”
f = BytesIO() #直接在内存开辟一点空间存放临时生成的图片
img, code = yzm.create_validate_code() #调用check_code生成照片和验证码
request.session['verify'] = code #将验证码存在服务器的session中,用于校验
img.save(f,'PNG') #生成的图片放置于开辟的内存中
return HttpResponse(f.getvalue()) #将内存的数据读取出来,并以HttpResponse返回`
关键html
<div class="form-group">
<label for="">验证码</label>
<input class="form-control" type="text" placeholder="" name="verify">
<div id="captcha"><img alt="140x140" id="yzm" src="/index/create_code_img/" class="img-rounded" /><span id="sp">看不清,换一张</span><br></div>
</div>
<script>
$(function () {
// 添加点击事件 鼠标浮动时变成小手
$('#sp2').css('cursor', 'pointer').click(function () {
// 获取到图片的src路径 换一个新的路径 此代码相当与在原来的基础上增加数据
$('#yzm2').attr('src', $("#yzm2").attr('src')+'?'+Math.random())
})
})
</script>