zoukankan      html  css  js  c++  java
  • django初识

    认识django

    1. Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。
    2. Django是一个开放源代码的Web应用框架,由Python写成。
    3. Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。
    4. Django采用了MVC的软件设计模式,即模型M,视图V和控制器C。

    django安装命令

    1. 在cmd命令行输入:  pip install django          指定版本安装:   pip install django==2..1

    2. 查看安装是否成功:1. 在命令行输入python进入python 2.命令行输入:import django 导入django 3.命令行输入:django.get_version() 查看版本
      (也可以在python安装目录下面scripts 那个文件夹会生成一个文件 django-admin.exe)


    创建django项目

    1. django-admin startproject urlDEMO   //用django命令开启一个项目,urlDEMO是项目名称(在dos命令行最好西南进入到一空的文件夹,在开启这个命令)

      创建的而文件目录结构:

     

    manage.py ----- Django项目里面的工具,通过它可以调用django shell和数据库等。
    settings.py ---- 包含了项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。
    urls.py ----- 负责把URL模式映射到应用程序,简单来说就是映射到views文件中的视图函数
    urlDEMO------整个项目的容器

      注意:要创建应用要在容器内里面创建(就是先进入到有manage那个文件的目录里面创建应用)

     

     创建应用

     创建一个应用: python manage.py startapp app01

    views.py: 存放试图函数
    models.py: 存放数据库表

      关于views中url函数线束详解

    url() 函数
    Django url() 可以接收四个参数,分别是两个必选参数:regex、view 和两个可选参数:kwargs、name,接下来详细介绍这四个参数。
    regex: 正则表达式,与之匹配的 URL 会执行对应的第二个参数 view。
    view: 用于执行与正则表达式匹配的 URL 请求。
    kwargs: 视图使用的字典类型的参数。
    name: 用来反向获取 URL。

     开启服务

    1. 开启服务器:  pyhton manage.py runserver  127.0.0.1:8888    //开启服务并指定ip和端口  默认是是 127.0.0.1:8000


    关于MVC

    C: controller 控制器(url分发和视图函数) 
    V: 存放html文件
    M: model:数据库操作


    关于MTV

    Django的MTV模式本质上和MVC是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django的MTV分别是值:

    • M 代表模型(Model): 负责业务对象和数据库的关系映射(ORM)。
    • T 代表模板 (Template):负责如何把页面展示给用户(html)。
    • V 代表视图(View):   负责业务逻辑,并在适当时候调用Model和Template。

    除了以上三层之外,还需要一个URL分发器,它的作用是将一个个URL的页面请求分发给不同的View处理,View再调用相应的Model和Template,MTV的响应模式如下所示:

     

    一般是用户通过浏览器向我们的服务器发起一个请求(request),这个请求回去访问视图函数,
    (如果不涉及到数据调用,那么这个时候视图函数返回一个模板也就是一个网页给用户),视图
    函数调用模型,模型去数据库查找数据,然后逐级返回,视图函数把返回的数据填充到模板中空格中,最后返回网页给用户。
  • 相关阅读:
    hdu5360 Hiking(水题)
    hdu5348 MZL's endless loop(欧拉回路)
    hdu5351 MZL's Border(规律题,java)
    hdu5347 MZL's chemistry(打表)
    hdu5344 MZL's xor(水题)
    hdu5338 ZZX and Permutations(贪心、线段树)
    hdu 5325 Crazy Bobo (树形dp)
    hdu5323 Solve this interesting problem(爆搜)
    hdu5322 Hope(dp)
    Lightoj1009 Back to Underworld(带权并查集)
  • 原文地址:https://www.cnblogs.com/tjp40922/p/10193044.html
Copyright © 2011-2022 走看看