P.S如果要屏蔽CSRF

P.S如果要屏蔽CSRF

方法1:注释掉django工程settings.py中

‘django.middleware.csrf.CsrfViewMiddleware’

model 模型层

view 视图层 (def 逻辑方法)

Templates 模板 html页面

SQLite数据库

① 定义模型,打开 web1/app1/models.py

每一个模型就是一个类,此类必须继承models.Model
每一个模型 UserInfo <-----> 数据库中的表 UserInfo

用户表

ID Name Pwd email userSex c_time

1 admin 123456 648321@qq.com 男 2019-05-31 11:11:11

② 注册模型, 打开 web1/app1/admin.py

from django.contrib import admin
from . import models

Register your models here.

admin.site.register(models.UserInfo)

③ 使用命令创建表

Tools—> Run manage.py Task… —> 先输入 makemigrations 回车

—>再输入migrate—>表已创建成功。

查看 web1/app1/migrations/0001_initial.py 此文件出现了就代表成功

④ 创建超级用户

步骤1: Tools—> Run manage.py Task…

步骤2: 输入 createsuperuser

步骤3: 按照提示信息
输入用户名 qiufen
输入邮箱 696214321@qq.com
输入密码 hehe123
确认密码 hehe123

步骤4: 打开浏览器

http://127.0.0.1:8000/admin/ 输入用户名和密码

恭喜你,数据库创建成功,页面和数据库连接起来

功能1:注册

① 打开 web1/templates/user/register.html

修改 标签,因为提交给后台的数据就是通过这个标签提交

action 提交给谁? 地址必须要在urls.py配置

method 提交方式 get或者post,表单的话都是post

② 打开 web1/web1/urls.py

#添加了一个配置

url(r’^addUser/’,views.addUser),

③ 打开 web1/app1/views.py

def addUser(request):
#获取页面传递过来的值 get(‘必须是表单input中name属性值’)
username=request.POST.get(‘username’)
password = request.POST.get(‘password’)
email = request.POST.get(‘email’)
sex = request.POST.get(‘sex’)
# 测试值是否获取到了,输出值
print(username,password,email,sex)
#把值存储到数据中
try:
models.UserInfo.objects.create(name=username,pwd=password,email=email,usersex=sex)
return render(request, ‘user/login.html’)
except:
err=‘注册失败’
return render(request,‘user/register.html’,{‘errTip’:err})

④ 在页面中获取逻辑方法传递给页面的值在这里插入代码片

{{errTip}}

⑤ 测试

-功能2:登录

① 打开 web1/templates/user/login.html

修改 action 和 method

② 打开 web1/web1/urls.py

url(r’^userLogin/’,views.checkLogin),

③ 打开 web1/app1/views.py

def checkLogin(request):

 # 1 获取页面传递的值
    username=request.POST.get('username')
    password=request.POST.get('password')
    # 2 检查值是否获取到了
    print(username,password)
    # 3 获取所有的用户信息
    userList=models.UserInfo.objects.all()

   4 登录失败时的提示信息
        err='用户名或者密码错误'
    
     5  使用循环遍历所有用户
        for u in userList:
            # 判断输入用户名和密码是否正确
            if u.name==username and u.pwd==password:
                # 认为登录成功,成功跳转到主页面
                return redirect('/app1/index')
        # 登录失败,重新跳转登录页面,并且实现错误信息
        return render(request,'user/login.html',locals())

④ 去login.html页面中显示错误信息

<div class="layui-form-item">
   <div class="errTip">
        {{ err}}
   </div>
</div>

⑤ 检查

① 打开 web1/web1/urls.py

url(r’^app1/index/’,views.indexPage),

② 打开web1/app1/views.py

#用于访问主页面
def indexPage(request):
#把所有用户信息获取到
userList=models.UserInfo.objects.all()
return render(request, ‘index.html’,{‘userList’:userList})

③ 去index.html页面中显示数据

{% block content %}
{% for u in userList %}

{{ u.name}} {{ u.email}} {{ u.usersex}}

{% endfor %}

{% endblock %}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值