python+Django框架运用(一)

Django 介绍:

  django是一个采用Python语言开发的开源框架,2005年发布。早期是作新闻以及内容管理的网站的,提供了很是强大的后管理系统。python

  django官网:https://www.djangoproject.com正则表达式

  框架模式:

    djando的框架模式 - MTV:数据库

      M (Models)-------> 模型层:负责数据库的建模以及CRUD(增删改查)操做;django

      T (Templates)--------> 模板层:用于处理用户显示的内容,好比HTML;ubuntu

      V (Views)--------> 视图层:处理与用户交互的部分操做,从模型中获取数据,再将数据发送给模板,并显示给用户。服务器

    ps: MTV是属于django的一种框架模式,除了MTV以外还有一个比较出名的模式--MVC;框架

    MTV和MVC的功能作一个简单对应,以下:函数

      M - - - - - - M(Models):模型层网站

       T - - - - - - V(Views):视图层url

       V - - - - - - C(Controllers):控制层

    下面有一张MTV模式的框架图:

    

Django安装

  ps:ubuntu系统

  1、先查看是否已安装Django,

    在终端中进入python3的交互模式,导入django;若是成功,输入一下命令查看版本

    django.VERSION

  2、开始安装

    一、在线安装 

      sudo pip3 install django (默认安装最高版本)

      sudo pip3 install django==1.11.8 (指定安装版本为1.11.8)

      ps:这里根据自身需求

    二、离线安装

      1). 先到官网下载所需的Django安装包

      2). 在环境中解压Django包

         tar -xvf Django-1.11.8.tar.gz

      3). 进入到解压出来的目录中进行安装

        sudo python3 setup install

 

Django的简单使用

  1、建立Django项目,在终端中输入以下指令:

    django-admin startproject 项目名

    例: django-admin startproject mytext

  2、启动服务并访问网站

    使用manage.py文件来启动服务,以下:

    python3 manage.py runserver

    ps:也可使用./manage.py runserver 启动,可是若是你使用的是python3,须要进入manage.py文件中,将第一行改成 #!/usr/bin/env python3(已是则不用改)

 

Djanogo项目的结构

  1、manage.py ---->负责执行Django中的各项操做文件:

    如:

    启动服务、建立管理员、建立应用、数据库的同步操做等....

 2、主目录(名称同项目名)

    一、__init__.py

      项目的初始化文件,服务启动时,会自动执行。

    二、urls.py

      项目的基础url配置文件

    三、wsgi.py

      应用服务器配置文件

    四、settings.py

      项目的猪设置文件,下面介绍settings.py文件中的一些重要变量的含义:

      BASE_DIR: 获取当前项目的根目录路径

      DEBUG:调试模式,开发过程当中推荐使用True,上线运行推荐是False

      ALLOWED_HOSTS:设置容许访问本项目的地址列表,默认为空,表示只能本地,* 表示任何地址

      INSTALLED_APPS:指定已安装的应用,若是有本身建立的应用,须要在这进行注册

      MIDDLEWARE:指定注册的中间件

      ROOT_URLCONF:指定项目的基础路由配置文件

      TEMPLATES:指定模板的信息

      DATABASES:指定数据库的信息

      LANGUAGE_CODE:指定网站显示的语言,中文(zh-Hans)

      TIME_ZONE:指定时区,中国时区(Asia/Shanghai)

 

  URL的使用

    一、urls.py(文件)

      默认是在主目录中,主路由配置文件,会包含最基本的地址映射;每一个请求到达以后

    都会由urls.py文件中urlpatterns列表的url进行匹配;url()函数匹配上以后,可能交给其余

    urls.py文件或者视图(views)处理。

    二、url()函数

      语法:url(regex, views, kwargs=None, name=None)

      regex:正则表达式,匹配请求的url

      views:视图处理函数或者其余urls.py文件

      kwargs:字典,用来向views传参

      name:字符串,给url起别名.

      

    三、经过 url 向 views 传参

      1).使用正则表达式传参
      使用子组传参,一个子组是一个参数,想要多个参数的话,可使用多个子组
      子组 - ()
      urlpatterns = [
        #访问路径是run/的时候,交个run_views去处理
        url(r'^run/$',run_views),
        #访问路径是run/任意两位数字,交给run_args_views去处理
        url(r'^run/(\d{2})',run_args_views),
        #访问路径是run/四位数字/两位数字/,交给run1_views处理
        url(r'^run/(\d{4})/(\d{2})/$',run1_views),
      ]
      ps:
        一、在url()中,一个子组()表示一个参数
        二、在views.py中,对应的处理函数要根据url()中子组的个数,相应的定义参数,定义的参数要位于request以后
        例子:
        一、url(r'^run/(\d{2})',run1_views),

          def run1_views(request,num)
        二、url(r'^run/(\d{2})/(\d{4})',run2_views)

          def run2_views(request,num1,num2)

    四、使用url()第三个参数,字典传参
      url(r'^show/$',show_views,{'name':'laoshe','age':'89'})

      def show_views(request,name,age):       name:表示的就是字典name参数的值       age:表示的就是字典age参数的值       ps:         一、视图处理函数中,必须声明参数         二、参数的名称和位置,必需要与字典中的名称和位置保持一致

相关文章
相关标签/搜索