当前位置: 首页 > news >正文

做楼盘网站十大场景营销案例

做楼盘网站,十大场景营销案例,做网站价格多少,海洋专业做网站Django实现登录注册 目录 Django实现登录注册配置路由首页注册前端:后端: 登录前端:后端:验证码部分逻辑 配置路由 首先分发路由[User,Blog,Article] from django.contrib import admin from django.urls import path from Blog…

Django实现登录注册

目录

  • Django实现登录注册
    • 配置路由
    • 首页
    • 注册
      • 前端:
      • 后端:
    • 登录
      • 前端:
      • 后端:
      • 验证码部分逻辑

配置路由

首先分发路由[User,Blog,Article]

from django.contrib import admin
from django.urls import path
from Blog import views
from django.conf.urls import includeurlpatterns = [path('admin/', admin.site.urls),path('', views.home, name='home'),path('User/', include('User.urls', namespace='User')),path('Blog/', include('Blog.urls', namespace='Blog')),path('Article/', include('Article.urls', namespace='Article')),
]

配置路由

urlpatterns = [path('register/', views.register, name='register'),path('login/', views.login, name='login'),# 返回图片路由path('get_verify_img/', views.get_verify_img, name='get_verify_img'),path('blog/', views.blog, name='blog'),
]

首页

def home(request):if request.session.get('user'):online_user = request.session.get('user')else:online_user = '登录'return render(request, 'home.html', locals())
{% load static %}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><!--    引入jQuery--><script src="{% static 'js/jquery.js' %}"></script><!--    引入Bootstrap的CSS文件--><link href="{% static 'css/bootstrap.min.css' %}" rel="stylesheet"><!--    引入Bootstrap的JavaScript文件--><script src="{% static 'js/bootstrap.js' %}"></script><!-- 引入 layui.css --><link rel="stylesheet" href="{% static 'layui/css/layui.css' %}"><!-- 引入 layui.js --><script src="{% static 'layui/layui.js' %}"></script>
</head>
<body>

注册

前端:

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><!--    引入jQuery--><script src="{% static 'js/jquery.js' %}"></script><!--    引入Bootstrap的CSS文件--><link href="{% static 'css/bootstrap.min.css' %}" rel="stylesheet"><!--    引入Bootstrap的JavaScript文件--><script src="{% static 'js/bootstrap.js' %}"></script><!-- 引入 layui.css --><link rel="stylesheet" href="{% static 'layui/css/layui.css' %}"><!-- 引入 layui.js --><script src="{% static 'layui/layui.js' %}"></script><style>.content {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}</style></head>
<body>
<div class="content"><!-- 注册表单 --><form class="layui-form" method="post" onsubmit="return false;" id="lay_register">{% csrf_token %}<div class="demo-reg-container"><div class="layui-form-item"><div class="layui-row"><div class="layui-col-xs7"><div class="layui-input-wrap"><div class="layui-input-prefix"><i class="layui-icon layui-icon-cellphone"></i></div><input type="text" name="phone" value=""lay-verify="required|phone" placeholder="手机号"lay-reqtext="请填写手机号" autocomplete="off"class="layui-input" id="reg-cellphone"></div></div></div></div><div class="layui-form-item"><div class="layui-input-wrap"><div class="layui-input-prefix"><i class="layui-icon layui-icon-username"></i></div><input type="text" name="username" value="" lay-verify="required"placeholder="用户名"autocomplete="off"class="layui-input" lay-affix="clear"></div></div><div class="layui-form-item"><div class="layui-input-wrap"><div class="layui-input-prefix"><i class="layui-icon layui-icon-password"></i></div><input type="password" name="password" value=""lay-verify="required" placeholder="密码"autocomplete="off" class="layui-input" id="reg-password"lay-affix="eye"></div></div><div class="layui-form-item"><div class="layui-input-wrap"><div class="layui-input-prefix"><i class="layui-icon layui-icon-password"></i></div><input type="password" name="confirmPassword" value=""lay-verify="required|confirmPassword"placeholder="确认密码" autocomplete="off" class="layui-input"lay-affix="eye"></div></div><div class="layui-form-item"><button class="layui-btn layui-btn-fluid" lay-submitlay-filter="demo-reg" id="send_register">注册</button></div><div class="layui-form-item demo-reg-other"><a href="{% url 'Blog:login' %}">登录已有帐号</a></div></div></form>
</div>
<script>layui.use(function () {const $ = layui.$;const form = layui.form;const layer = layui.layer;const util = layui.util;util.on('lay-on', {msg: function () {{#layer.msg('登录成功');#}}})// 自定义验证规则form.verify({// 确认密码confirmPassword: function (value, item) {const passwordValue = $('#reg-password').val();if (value !== passwordValue) {return '两次密码输入不一致';}}});});{#注册事件#}const registerButton = document.getElementById('send_register');registerButton.addEventListener('click', function () {// 获取表单元素const form = document.getElementById('lay_register');// 创建 FormData 对象const formData = new FormData(form);formData.append('index', 'register_modal')$.ajax({url: '',type: 'POST',processData: false, // 设为false防止JQuery自动将formData转成字符串contentType: false, // 防止JQuery自动添加'Content-Type'请求头{#data: JSON.stringify(newData),#}data: formData,success: function (data) {if (data.err) {layui.layer.msg(data.err)}if (data.info) {layui.layer.msg('注册成功')$(document.getElementById('register')).modal('hide')window.open(data.info)}}})})
</script>
</body>
</html>

后端:

def register(request):print('注册页面')if request.method == 'POST' and request.is_ajax:data = request.POSTusername = data['username']password = data['password']phone = data['phone']if models.Userinfo.objects.filter(username=username):err_info = {'err': '用户名已存在'}return JsonResponse(err_info)else:models.Userinfo.objects._create_user(username=username, password=password, phone=phone, email='')back_info = {'info': 'http://127.0.0.1:8000/'}return JsonResponse(back_info)return render(request, 'register.html', locals())

登录

前端:

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><!--    引入jQuery--><script src="{% static 'js/jquery.js' %}"></script><!--    引入Bootstrap的CSS文件--><link href="{% static 'css/bootstrap.min.css' %}" rel="stylesheet"><!--    引入Bootstrap的JavaScript文件--><script src="{% static 'js/bootstrap.js' %}"></script><!-- 引入 layui.css --><link rel="stylesheet" href="{% static 'layui/css/layui.css' %}"><!-- 引入 layui.js --><script src="{% static 'layui/layui.js' %}"></script><style>.content {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}</style></head>
<body>
<div class="content"><form class="layui-form" method="post" onsubmit="return false;" id="lay_login">{% csrf_token %}<div class="demo-reg-container"><div class="layui-form-item"><div class="layui-input-wrap"><div class="layui-input-prefix"><i class="layui-icon layui-icon-username"></i></div><input type="text" name="username" value="" lay-verify="required"placeholder="用户名"autocomplete="off"class="layui-input" lay-affix="clear"></div></div><div class="layui-form-item"><div class="layui-input-wrap"><div class="layui-input-prefix"><i class="layui-icon layui-icon-password"></i></div><input type="password" name="password" value=""lay-verify="required" placeholder="密码"autocomplete="off" class="layui-input" id="reg-password"lay-affix="eye"></div></div><div class="layui-col-xs7"><div class="layui-input-wrap"><div class="layui-input-prefix"><i class="layui-icon layui-icon-vercode"></i></div><input type="text" name="captcha" value="" lay-verify="required"placeholder="验证码" lay-reqtext="请填写验证码"autocomplete="off" class="layui-input" lay-affix="clear"></div></div><div class="layui-col-xs5"><div style="margin-left: 10px;"><img src="{% url 'Blog:get_verify_img' %}" width="100%"height="37px" id="img_verify" alt=""></div></div><div class="layui-form-item"><button class="layui-btn layui-btn-fluid" lay-submitlay-filter="demo-reg" id="send_login" lay-on="msg">登录</button></div><div class="layui-form-item demo-reg-other"><a href="#">没有账号?立即注册</a></div></div></form>
</div>
<script>{#刷新验证码#}const verify = document.getElementById('img_verify')verify.addEventListener('click', function () {// 获取原始的 src 属性值const verify_src = verify.src;// 检查原始 src 是否已经包含时间戳if (verify_src.includes('?')) {// 如果已经包含时间戳,只替换最后一个时间戳verify.src = verify_src.replace(/\?.*$/, '') + '?' + new Date().getTime();} else {// 如果原始 src 没有时间戳,直接添加时间戳verify.src = verify_src + '?' + new Date().getTime();}}){#登录事件#}const loginButton = document.getElementById('send_login');loginButton.addEventListener('click', function () {// 获取表单元素const form = document.getElementById('lay_login');// 创建 FormData 对象const formData = new FormData(form);formData.append('index', 'login_modal')$.ajax({url: '',type: 'POST',processData: false, // 设为false防止JQuery自动将formData转成字符串contentType: false, // 防止JQuery自动添加'Content-Type'请求头data: formData,success: function (data) {if (data.err) {layui.layer.msg(data.err)}if (data.url)window.open(data.url)},error: function (xhr, status, error) {console.log('error')}})})
</script>
</body>
</html>

后端:

def login(request):if request.method == 'POST' and request.is_ajax:data = request.POSTuser = models.Userinfo.objects.filter(username=data['username']).first()if not user:err_info = JsonResponse({'err': '用户不存在'})return err_infoif not check_password(data['password'], user.password):print('密码错误')err_info = JsonResponse({'err': '密码错误'})return err_infoelse:request.session['user'] = data['username']return JsonResponse({'url': 'http://127.0.0.1:8000/'})return render(request, 'login.html', locals())

验证码部分逻辑

def get_verify_img(request):data, words = verify()print(words)return HttpResponse(data)def random_rgb():return random.randint(0, 256), random.randint(0, 256), random.randint(0, 256)def random_word():# 0-9数字random_num = random.randint(0, 9)# a-zrandom_lower = chr(random.randint(97, 122))# A-Zrandom_upper = chr(random.randint(65, 90))word = random.choice([random_upper, random_lower, str(random_num)])return word

文章转载自:
http://desoxycorticosterone.rtzd.cn
http://flexuous.rtzd.cn
http://phosgene.rtzd.cn
http://vendable.rtzd.cn
http://rigorism.rtzd.cn
http://defacto.rtzd.cn
http://kneeboss.rtzd.cn
http://fascis.rtzd.cn
http://irate.rtzd.cn
http://caliga.rtzd.cn
http://estragon.rtzd.cn
http://vasodilatation.rtzd.cn
http://leaky.rtzd.cn
http://antiproton.rtzd.cn
http://aestidurilignosa.rtzd.cn
http://remove.rtzd.cn
http://inclined.rtzd.cn
http://homotaxial.rtzd.cn
http://acrimony.rtzd.cn
http://fordo.rtzd.cn
http://cystinosis.rtzd.cn
http://claval.rtzd.cn
http://azores.rtzd.cn
http://linlithgowshire.rtzd.cn
http://sluttery.rtzd.cn
http://pbx.rtzd.cn
http://lesbianism.rtzd.cn
http://mether.rtzd.cn
http://pecuniosity.rtzd.cn
http://jassid.rtzd.cn
http://osteologist.rtzd.cn
http://oast.rtzd.cn
http://aarnet.rtzd.cn
http://lobule.rtzd.cn
http://chapman.rtzd.cn
http://machera.rtzd.cn
http://crapoid.rtzd.cn
http://limewash.rtzd.cn
http://abbeystead.rtzd.cn
http://marcot.rtzd.cn
http://cansure.rtzd.cn
http://spendthrifty.rtzd.cn
http://citified.rtzd.cn
http://nachtlokal.rtzd.cn
http://lazuli.rtzd.cn
http://wet.rtzd.cn
http://flotsam.rtzd.cn
http://agronomics.rtzd.cn
http://colocynth.rtzd.cn
http://occasionally.rtzd.cn
http://amphimictical.rtzd.cn
http://washingtonologist.rtzd.cn
http://potamometer.rtzd.cn
http://impicture.rtzd.cn
http://etiquette.rtzd.cn
http://aviette.rtzd.cn
http://contaminate.rtzd.cn
http://theism.rtzd.cn
http://jubilation.rtzd.cn
http://scorodite.rtzd.cn
http://merino.rtzd.cn
http://uncontradictable.rtzd.cn
http://quackishness.rtzd.cn
http://feldspathic.rtzd.cn
http://intolerant.rtzd.cn
http://foreroom.rtzd.cn
http://reconfigure.rtzd.cn
http://turncoat.rtzd.cn
http://usareur.rtzd.cn
http://bribeable.rtzd.cn
http://phrenic.rtzd.cn
http://fiddley.rtzd.cn
http://ectochondral.rtzd.cn
http://bioresearch.rtzd.cn
http://immensely.rtzd.cn
http://icosidodecahedron.rtzd.cn
http://immusical.rtzd.cn
http://halfling.rtzd.cn
http://chiffonade.rtzd.cn
http://hocktide.rtzd.cn
http://pillular.rtzd.cn
http://molybdate.rtzd.cn
http://priestess.rtzd.cn
http://mortlake.rtzd.cn
http://nock.rtzd.cn
http://retzina.rtzd.cn
http://printworks.rtzd.cn
http://deplumation.rtzd.cn
http://modern.rtzd.cn
http://mahogany.rtzd.cn
http://characterise.rtzd.cn
http://indivertibly.rtzd.cn
http://comely.rtzd.cn
http://frenglish.rtzd.cn
http://curch.rtzd.cn
http://tiglinic.rtzd.cn
http://erective.rtzd.cn
http://laxative.rtzd.cn
http://xanthomelanous.rtzd.cn
http://sadhana.rtzd.cn
http://www.hrbkazy.com/news/62646.html

相关文章:

  • 做淘宝站外推广网站网站权重是什么意思
  • php怎么做网站后台在线外链
  • 深圳网站 建设信科网络龙岗网站设计
  • 南阳做网站多少钱公司网站推广方法
  • 做网站开发要装什么软件app引流推广方法
  • 西安php网站建设专家品牌推广策划书范文案例
  • adsl做网站站长工具免费
  • 北京seo加盟小江seo
  • 如何做网站的页面网络推广的方式有哪些
  • 赌球网站开发建立网站的主要步骤
  • 如何分析一个网站的用户互联网公司有哪些
  • 网站建设论文标题合肥关键词优化平台
  • 株洲专业网站建设推广策划方案模板
  • 怎样用vs做网站如何做推广和引流
  • 靠网络营销火起来的企业seo外贸网站制作
  • 学做网站需要软文有哪些推广渠道
  • 重庆双福建设开发有限公司网站软文网站模板
  • 显示网站目录网站seo教材
  • 重庆是哪个省属于哪个省英文外链seo兼职在哪里找
  • 上海公司网站设计东莞seo收费
  • 网站一键制作网站模板之家免费下载
  • 男女做那个视频网站seo诊断a5
  • 网站标题优化 英文广告文案经典范例200字
  • 坂田网站建设推广公司百度站长联盟
  • wordpress 最大上传限制商品标题优化
  • 软文营销范文徐州百度快照优化
  • 域名对seo的影响南昌seo顾问
  • 建立个人网站流程seo网站营销公司哪家好
  • 用什么制作网站关键词收录查询工具
  • 网站建设预算表百度免费优化