Python Web 框架-Django day01

目录

1.Django框架介绍

2.Django框架的安装

3.Django框架的使用

4.Django中的应用


Django

1.Django框架介绍

  1. 什么是Django
    Django是一个开源框架,2005年发布,采用python语言编写的,早期时主要做新闻和内容管理的网站的。Django本身提供了非常强大的后台管理系统

    版本:
      最高:2.1.2
      使用:1.11.8

    官网:https://www.djangoproject.com/
    中文文档:http://djangobook.py3k.cn/2.0/
  2. 框架模式
    MTV
      M:Models - 数据库模型
      T:Templates - 模板(网页)
      V:Views - 视图

2.Django框架的安装

  1. 安装Django框架
    1. 查看已安装的Django版本
      1. 进入到终端以及python的交互模式
        交互模式:python3 / ipython3
      2. 交互模式中输入:import django
        如果未报错:当前环境中已经装好Django
        如果报错:当前环境中没有Django
      3. 查看已安装的版本
        交互模式中:django.VERSION
    2. 安装Django
      1. 在线安装 - 使用 pip3
        pip3:安装到python3
        pip:安装到python2

        sudo pip3 install django
        (安装Django的最新版本)

        sudo pip3 install django==1.11.8
        (安装Django的指定版本)
      2. 离线安装
        1. 下载安装包
        2. 解压安装包
          tar -xvf Django-1.11.8.tar.gz
        3. 进入到解压目录中,找到 setup.py 文件
          sudo python3 setup.py install

3.Django框架的使用

  1. 创建项目
    1. 创建目录
      作用:用于保存所有的Django项目(可选)
      指令:mkdir django
    2. 创建项目
      cd django
      使用 django-admin 指令创建 Django 项目
      语法:django-admin startproject 项目名
  2. Django项目的结构介绍
    1. manage.py
      包含执行django中的各项操作的指令(子命令)
      如:
        启动服务:runserver
        创建应用:startapp
        创建管理员:createsuperuser
        ... ...
    2. 主目录(与项目名称一致的目录)
      1. __init__.py
        项目的初始化文件,服务被启动,该文件自动被运行
      2. urls.py
        项目的基础url配置文件(基础的路由配置)
      3. wsgi.py
        Web Server Gateway Interface
        Web服务网关接口
      4. settings.py
        项目的配置文件
        1. BASE_DIR:获取当前项目的绝对路径
        2. DEBUG:是否启用调试模式
          True:启用调用模式
          False:不启用调试模式
        3. ALLOWED_HOSTS
          设置允许访问到本项目的地址列表
          如果为空的话,只有本机(localhost / 127.0.0.1)才能访问

          如果允许在局域网中被外部机器访问的话:
          推荐写 ['*'],表示任何能够表示该机器的地址都能访问到当前项目

          如果允许被其他机器访问的话,启动服务时,必须使用以下方式:
          ./mange.py runserver 0.0.0.0:端口号
        4. INSTALLED_APPS
          指定已安装的应用,如果有自定义应用的话,需要在此注册
        5. MIDDLEWARE
          中间件,如果有自定义的中间件,需要在此注册
        6. ROOT_URLCONF
          用于指定项目的基础路由配置文件
        7. TEMPLATES
          指定模板的信息
        8. DATABASES
          指定数据库的信息
        9. LNAGUAGE_CODE
          语言设置,如果需要中文的话,允许将值更改为 'zh-Hans'
        10. TIME_ZONE
          指定时区,中国时区的话,允许将值设置为 'Asia/Shanghai'
    3. URL的使用
      1. urls.py
        默认在主目录中,主路由配置文件,会包含最基本的地址映射。
        作用:通过urls中定义好的地址找到对应的视图处理函数
      2. urld的语法
        作用:为了匹配用户的访问路径
        from django.conf.urls import url
        语法:
          url(regex,views,kwargs=None,name=None)
        1. regex:允许是正则表达式,匹配请求的url
        2. views:对应的视图处理函数的名称
        3. kwargs:字典,用来向views传参,如果没有参数可以省略
        4. name:为url起别名,在地址反向解析时使用
      3. 通过url向视图传参
        1. 使用正则表达式传参
          使用子组传参,一个子组就是一个参数,要传递多个参数的话需要使用多个子组,中间用 / 隔开
          子组 - ()
          urlpatterns = [
              #当访问路径是show/ 的时候,交给show_views处理
              url(r'^show/$',show_views),
              #当访问路径是show/ 两位数字的时候,交给show1_views函数
              url(r'^show/(\d{2})/$',show1_views),
          ]

          views.py
          def show1_views(request,num1):
              num1 表示的就是路径“show/”后面的第一个参数
              pass

          练习:
          访问地址:localhost:8000/四位数字/两位数字/两位数字
          在网页中输出:生日为:xxxx年xx月xx日
        2. 使用url()第三个参数 - 字典传参
          dic = {
            'name':'naruto',
            'age':18,
          }

          url(r'^show3/$',show3_views,dic)

          views.py
          def show3_views(request,name,age):
              pass

4.Django中的应用

  1. 什么是应用
    应用就是网站中的一个独立的程序模块
    在Django中,主目录一般不处理用户的具体请求,主目录主要做的是项目的初始化以及请求的分发(分布式请求处理),而具体的请求由各个应用去处理
  2. 创建应用
    1. 指令
      ./manage.py startapp 应用名称

      ex:
      ./manage.py startapp news

      格式图片

       
    2. 在 settings.py中进行注册
      在INSTALLED_APPS 中追加引用名称
      INSTALLED_APPS = [
        'django.contrib.admin',
        ... ...,
        '自定义应用名称',
      ]

      练习:
      1. 创建新项目 - netease
      2. 创建index应用,并注册
      3. 创建sport应用,并注册
      4. 创建music应用,并注册
      5. 创建news应用,并注册
  3. 应用的结构组成
    1. migrations 目录
      存放数据的中间文件
    2. __init__.py
      应用的初始化文件
    3. admin.py
      应用的后台管理配置文件
    4. apps.py
      应用的属性配置文件
    5. models.py
      Models 与 模型相关的映射文件
    6. tests.py
      应用的单元测试文件
    7. views.py
      定义视图处理的函数文件
  4. 分布式路由系统
    在每个应用中创建 urls.py,内容的格式参考主目录的urls.py

    当访问路径是 http://localhost:8000/music/xxx
    则交给music的urls去处理

    当访问路径是 http://localhost:8000/news/xxx
    则交给news的urls去处理

    当访问路径是 http://localhost:8000/music/index
    则交给music的urls找到 Index_views 去处理

    当访问路径是 http://localhost:8000/news
    则交给news的urls找到 Index_views去处理

作业:

  1. 访问路径 http://localhost:8000/login
    交给 Index 应用中的login_views 去处理
  2. 访问路径 http://localhost:8000/register
    交给 index 应用中的 register_views 去处理
  3. 访问路径 http://localhost:8000/
    交给 index 应用中的 index_views 去处理
     

今日示例请点击

nrwc

猜你喜欢

转载自blog.csdn.net/qq_42584444/article/details/83021804