美文网首页
Django 学习笔记 - Django 基础

Django 学习笔记 - Django 基础

作者: yipliksun | 来源:发表于2017-01-04 00:07 被阅读0次

    Django 基础

    web框架是什么

                       |运行服务,连接,   |                框架提供的
                       |读取报文,解析报文,|                辅助函数
    HTTP格式的报文---->|包装为python对象   |                    | 
                       |                   | python对象   |     v
                       |                   |------------> | 
                       |web框架            |              | 我们的代码
                       |(Django)           |<------------ | 
                       |                   | python数据   |           
    HTTP格式的报文     |                   |                            
     <-----------------|将python数据转化为 |                        
                       |报文,发送给客户端 |                        
                       |,处理链接和资源   |                            
    
    • web框架实际上是一个python的软件包

    web请求基本流程

    url配置        实际处理函数       数据模型       数据库
    urls.py  --->   views.py     -->  models.py  --> sqlite3
                        |  \
    <-------------------|    \--- 其他服务
              |
              v
          模板 html(不是必然,可能会返回json,API等)
          templates
    
    • url配置:Django中为urls.py
      请求进来,优先到url配置,匹配模式,从上向下依次找相匹配的模式,由模式指定函数来处理这个请求。像一个书的目录。

    • 控制器:Django中为views.py
      实际上编写业务逻辑。

    • 数据模型:Django中为models.py

    • html模板:Django中为html

    核心组件是如何连接在一起的?

    全局配置(settings.py)

    1. ROOT_URLCONF="pydiscuz.urls" --> 总urls.py --> 各app中的urls.py

    2. INSTALLED_APPS=( 'app1',
      'app2',
      'app3',
      ...)
      数据模型和模板通过INSTALLED_APPS配置到对应的APP中的models.py和templates文件夹中找

    • urls.py 和 views.py 是从全局配置里面引出来的
    • models.py 和 templates/ 是从注册应用中找到的

    编写一个页面的流程

    1. 定义数据结构,编写models.py 文件(永远数据结构为先,我们会考虑,他对我们的数据产生什么变化,对数据有什么改动)
    2. 设定urls.py(确定功能应在什么url上访问)
    3. 编写对应的处理函数,在views.py中(由url模式匹配到一个处理函数)
    4. 编写模板,在templates/下(处理函数说明我们要返回什么页面)

    数据模型 和 数据库

    • 数据模型 和 数据库 不是在一起的。
    • 框架提供一个方法,可以让我们用python类的形式来编写数据模型
    • 能够用一条简单的命令在数据库中创建与之对应的数据表
    • 把数据库的表结构映射为python里面的一个类
    • 数据库 表中的一行就是python类中的一个实例

    运行Django程序

    同步 数据模型 到 数据库

    $ python manage.py syncdb
    

    运行服务

    $ python manage.py runserver

    相关文章

      网友评论

          本文标题:Django 学习笔记 - Django 基础

          本文链接:https://www.haomeiwen.com/subject/amxovttx.html