• django登录


    一. form表单使用注意事项:
        1. action="" 提交地址, method='post' 请求方式
        2. input 标签要有name属性才能被获取
        3. 有一个input的类型是submit 或者button 用于提交表单数据
        tip:  注释掉settings.py中 MIDDLEWARE(中间件)的 'django.middleware.csfr.CsrfViewMiddleware'就可以提交post请求(暂时)
    
    
       GET 和POST的区别:
            1.GET 获取一个页面
                login/?user=alex&pwd=alex  //信息暴露
                在Django中获取数据
                        request.GET {}  // 一个对象
                        request.GET['user'] ,获取标签中name是user的值
                        request.GET.get('user')
            2.POST 提交数据
                数据不显示在url中, 存放在请求体
                在Django中获取数据
                    request.POST {}
                    request.POST['user']
                    request.POST.get('user')
    
    
    二. APP: 项目 相当于老男孩里面分  python学院---(appPython), linux 学院---(applinu.),
        创建APP: 1. 命令 python manage.py startapp app名称
                 2. pycharm
                    tools----run manage.py task
                    输入指令: startapp app名称
    
        注册app:
                [INSTALLED_APPS] 列表中添加
                    'app01'
                    建议写全: 'app01.apps.App01Config'
    
        ORM介绍和使用:
              1. 使用mysql数据库
                     1. 创建mysql数据库  # create database 数据库名称
                     2. 在 settings.py中配置
                         DATABASES = {
                            'default': {
                                'ENGINE': 'django.db.backends.mysql',   # 数据库引擎  mysql
                                'NAME': 'day58',                        # 数据库名称 day58
                                'HOST': '127.0.0.1',                    # 数据库ip地址
                                'PORT': 3306,                           # 数据库端口号
                                'USER': 'root',                         # 数据库登录用户名
                                'PASSWORD': '',                         # 数据库登录密码
                                        }
                                       }
                        a django默认支持sqlite,mysql, oracle,postgresql数据库。
                             <1> sqlite
                                    django默认使用sqlite的数据库,默认自带sqlite的数据库驱动 。
                            引擎名称:django.db.backends.sqlite3
                             <2> mysql
                                    引擎名称:django.db.backends.mysql
    
                        b mysql驱动程序
                           MySQLdb(mysql python)
                           mysqlclient
                           MySQL
                           PyMySQL(纯python的mysql驱动程序)
                        (pychart连接数据库, 须下载驱动程序,有提示)
    
                     3. Django默认使用python 2版本的数据库支持模块, 需要告知它使用pymysql模块连接
                            在与settings.py同级目录下的__init__.py中写下面的代码
                                import pymysql
                                pymsql.install_as_MySQLdb()
    
                     4. 在APP目录下的models.py中写类(models.Model)  # 定义数据库表
                            class User(models.Model)    # 继承
                                name = models.CharField(max_length=32)
                                pwd = models.CharField(max_length=32)
    
                     5. 在数据库生产表: 执行命令
                        python manage.py makemigrations   # 生成py文件,准备创建数据库表
                        python manage.py migrate    # 执行数据库语句, 生成实际的表
    
              2. orm 的操作:
                1.all 获取所有的数据 # 结果是个对象列表
                        models.User.objects.all() ——》 对象列表
    
                2. get 获取一条数据库(没有或者是存在多条报错)
                    models.USer.objects.get(field=要查询的值) ---->>>对象  # get里面放关键字
    
                3. filter 获取满足条件的所有的对象
                    models.User.objects.fileter(field1='alex', field2='alex')  ----->>对象列表 # 逗号表示&与条件
    
                4. odels.User.objects.field  field字段的值
                        odels.User.objects.name     # name字段的值
                        odels.User.objects.pwd      # pwd字段的值
                        odels.User.objects.id (pk)  # id ,主键
    
  • 相关阅读:
    四则运算
    读书计划
    典型用户和场景分析
    课堂练习--电梯调度
    重力解锁--用户需求调研
    书籍促销活动优惠问题
    小组开发项目--NABC分析
    梦断代码读后感之终结篇
    结对开发-求环状二维数组最大子数组
    结对开发之大数溢出
  • 原文地址:https://www.cnblogs.com/tcpblog/p/10027982.html
Copyright © 2020-2023  润新知