Django 学习笔记 - Django 基础

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 基础)