zoukankan      html  css  js  c++  java
  • Django文件配置及orm

    http协议
    -特点:
        1 基于TCP/IP协议之上的应用层协议
        2 基于请求-响应模式
        3 无状态保存
        4 无连接
    -请求头:
    请求首行 get / http/1.1
    key:value
    key:value

    请求体的内容

    -响应头:
    响应首行 http/1.1 200 ok
    响应头: key:value

    响应体: html的代码
    -状态码: 1开头(正在处理) 2开头(处理完毕) 3开头(重定向) 4开头(客户端问题) 5开头(服务端问题)

    Django目录结构:
      1 工程名的文件夹:
            settings:全局配置
            urls:路由根视图函数映射关系
    app名字的文件夹:
            views:视图函数 models:orm关系映射

    一、django中app的概念:
    大学:----------------- 项目
    信息学院 ----------app01
    物理学院-----------app02
    ****强调***:创建了app,要在配置文件中注册
    ...

    settings文件内的配置,框内是配置app01的语句也可以写成 'app01'


    二、模板路径配置:
    1 templates文件夹 templates文件夹内一般存放views要渲染的页面创建了templates文件夹后要查看settings文件内有没有配置
    2 settings里注册一下


    三、静态文件配置:
    1 STATIC_URL = '/static/' 一般不要改
    2 创建一个static文件夹 一般不要改
    3 STATICFILES_DIRS=[
    os.path.join(BASE_DIR, 'static'), 创建的文件夹路径(可以写多个)
    ]
    静态文件配置也需要在settings文件内配置,static文件夹内一般存放的是js、jq、图片等文件

    四、完整版登录功能
      1.login.html
        1 action:提交到后台的地址三种写法:
    1 http://127.0.0.1:8000/login
    2 /login/ 推荐用
    3 空
    2 method post方式
    3 <input type="submit" value="提交">或<button></button> #type不可以是button

    <form action="http://127.0.0.1:8000/login" method="post">
            <p>
              用户名:<input type="text" name="name" class="form-control">
            </p>
            <p >
              密码:<input type="password" name="pwd" class="form-control">
            </p>
            <input type="submit" value="提交">
      </form>

      2.视图层:
    1 request.method ----前台提交过来请求的方式
    2 request.POST(相当于字典)----post形式提交过来的数据,(http请求报文的请求体重)
    3 request.POST.get('name') ----推荐用get取值(取出列表最后一个值)
    4 request.POST.getlist('name')-----取出列表所有的值_
    5 前台get方式提交的数据,从request.GET字典里取

        

      3.链接数据库(防止注入,推荐以下写法)
    cur.execute('select * from user where name=%s and password=%s ',[name,pwd])



    五、get请求和post请求
    get:获取数据,页面,携带数据是不重要的数据(数据量有大小限制)
    post:往后台提交数据

    六、新手三件套总结
    1 render--返回页面
    默认会去templates里找,注意路径
    2 redirect--重定向
    3 HttpResponse
    本质:都是返回HttpResponse的对象

    七、orm介绍
    	1 ORM即Object Relational Mapping,全称对象关系映射。
    	优点: 
    		1 不用写sql,不会sql的人也可以写程序
    		2 开发效率高
    	2 缺点:
    		1 可能sql的效率低
    	3 如何使用:
    		如果连接mysql:在setting里配置:
    		    'default': {
    				'ENGINE': 'django.db.backends.mysql',
    				'HOST': '127.0.0.1',
    				'PORT': 3306,
    				'USER': 'root',
    				'PASSWORD': 'admin',
    				'NAME': 'lqz',
    			}
    		在app下的__init__.py里写:
    		import pymysql
    		pymysql.install_as_MySQLdb()
    	
    	4 django-orm:
    		1 不能创建数据库(需要手动创建数据库)
    		2 可以创建数据表
    		3 可以创建字段
    		
    	5 数据库迁移
    		1 python3 manage.py makemigrations   ----记录一下数据库的变化
    		2 python3 manage.py migrate          ----将变化同步到数据库中
    
    
    
  • 相关阅读:
    git常用指令 github版本回退 reset
    三门问题 概率论
    如何高效的学习高等数学
    数据库6 关系代数(relational algebra) 函数依赖(functional dependency)
    数据库5 索引 动态哈希(Dynamic Hashing)
    数据库4 3层结构(Three Level Architecture) DBA DML DDL DCL DQL
    梦想开始的地方
    java String字符串转对象实体类
    java 生成图片验证码
    java 对象之间相同属性进行赋值
  • 原文地址:https://www.cnblogs.com/layerluo/p/9912246.html
Copyright © 2011-2022 走看看