Django框架流程

Django版本 : 1.11.11

一. Django流程

  1. MVC是众所周知的设计模式,即 : 将应用程序分为三个部分 : model(模型),view(视图),controller(控制器), 其中 :

    M -- 是应用程序用于处理应用程序数据逻辑的部分,通常模型对象负责在数据中存取数据.

    V -- 是应用程序中处理数据显示的部分.通常视图是依据模型数据创建的.

    C -- 是应用程序中处理用户交互的部分,通常控制器负责从视图读取数据,控制用户输入,并行模型发送数据.

  2. django也是一个MVC框架. 但是在django中, 控制器接收用户输入的部分由框架自行处理,所以django里更关注的是Model(模型), Template(模板)和Views(视图), 称为MTV模式 :

    M -- 模型, 即数据存取层. 该层处理的是与数据相关的所有事物 : 如何存取, 如何验证有效性, 包含哪些行为以及数据之间的关系等.

    T -- 模板, 即表现层. 该层处理的是与表现相关的决定 : 如何在页面或其他类型文档中进行显示.

    V -- 视图,即业务逻辑层. 该层包含存取模型及调取恰当模板的相关逻辑. 可以将它看做模型与模板之间的桥梁.

二. Django基本配置

  1. 常用命令   

    python manage.py runserver ip:port  (启动服务器,默认ip和端口为http://127.0.0.1:8000/)

    python manage.py startapp appname  (新建 app)

    python manage.py syncdb  (同步数据库命令,Django 1.7及以上版本需要用以下的命令)

    python manage.py makemigrations  (显示并记录所有数据的改动)

    python manage.py migrate  (将改动更新到数据库)

    python manage.py createsuperuser  (创建超级管理员)

    python manage.py dbshell  (数据库命令行)

    python manage.py  (查看命令列表)

  2. 程序目录

    

  3. 数据库配置文件

#在与Django项目同名的包内的settings.py文件内配置

# 默认是SQLit 3 的配置

DATABASES = {
    ‘default‘: {
        ‘ENGINE‘: ‘django.db.backends.sqlite3‘,
        ‘NAME‘: os.path.join(BASE_DIR, ‘db.sqlite3‘),
    }
}

# MySQL的配置

DATABASES = {
    ‘default‘: {
    ‘ENGINE‘: ‘django.db.backends.mysql‘,
    ‘NAME‘:‘dbname‘,   #注意这里的数据库应该以utf-8编码
    ‘USER‘: ‘xxx‘,        #数据库账户
    ‘PASSWORD‘: ‘xxx‘,
    ‘HOST‘: ‘‘,    #数据库主机IP地址
    ‘PORT‘: ‘‘,    #数据库端口
    }
}

# 对于python3的使用者们还需要再加一步操作
# 由于Django内部连接MySQL时使用的是MySQLdb模块,而python3中还无此模块,所以需要使用pymysql来代替

# 如下设置放置的与Django项目同名的包下的 __init__.py文件中

import pymysql
pymysql.install_as_MySQLdb()

# PostgreSQL配置
DATABASES = {
    ‘default‘: {
        ‘NAME‘: ‘app_data‘,
        ‘ENGINE‘: ‘django.db.backends.postgresql_psycopg2‘,
        ‘USER‘: ‘XXX‘,
        ‘PASSWORD‘: ‘XXX‘
    }

# Oracle配置
DATABASES = {
    ‘default‘: {
        ‘ENGINE‘: ‘django.db.backends.oracle‘,
        ‘NAME‘: ‘xe‘,
        ‘USER‘: ‘a_user‘,
        ‘PASSWORD‘: ‘a_password‘,
        ‘HOST‘: ‘‘,
        ‘PORT‘: ‘‘,
    }
}

配置代码

    Django框架对于开发者来说高度透明化,对于不同数据库的具体使用方法是一致的, 改变数据库只需要变动上述配置即可.

  4. 静态文件添加

# 首先在项目根目录下创建static目录

# 接着在settings.py 文件下添加

STATIC_URL = ‘/static/‘  # 默认已添加,使用静态文件时的前缀
STATICFILES_DIRS = (
        os.path.join(BASE_DIR,‘static‘), #行末的逗号不能漏
    )

# 这样在template中就可以导入static目录下的静态文件啦

# 例:
<script src="/static/jquery-1.12.4.js"></script>

static配置

三. Django路由系统

  URL就像是Django所支撑网站的目录. 它的本质是URL模式以及要为该URL模式调用的视图函数之间的映射表; 就是以这种方式告诉Django, 对于这个URL调用对应的代码, URL的加载就是从配置文件中开始.

  基本格式 :

from django.conf.urls import url

urlpatterns = [
     url(正则表达式, views视图函数,参数,别名),
]

  参数说明 :  

    正则表达式:一个正则表达式字符串

    views视图函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串

    参数:可选的要传递给视图函数的默认参数(字典形式)

    别名:一个可选的name参数

  注意事项 :   

    urlpatterns中的元素按照书写顺序从上往下逐一匹配正则表达式,一旦匹配成功则不再继续。

    若要从URL中捕获一个值,只需要在它周围放置一对圆括号(分组匹配)。

    不需要添加一个前导的反斜杠,因为每个URL 都有。例如,应该是^articles 而不是 ^/articles。

    每个正则表达式前面的‘r‘ 是可选的但是建议加上。

  补充 :

    Django settings.py配置文件中默认没有 APPEND_SLASH 这个参数,但 Django 默认这个参数为 APPEND_SLASH = True。 其作用就是自动在网址结尾加‘/‘。

原文地址:https://www.cnblogs.com/dong-/p/9720542.html

时间: 2024-10-14 06:49:56

Django框架流程的相关文章

django简介,安装,文件介绍,三板斧(render,HttpResponse,redirect)HTTP协议,用socket实现简单版web框架,用wsgiref,jinja2,pymysql实现Django运行流程

1.web应用(https://www.cnblogs.com/Dominic-Ji/p/9167438.html) c/s,b/s架构c/s:客户端 服务端b/s:浏览器 服务器?   2.HTTP协议: 超文本传输协议 四大特性: 1.基于TCP/IP作用在应用层之上的协议,底层实现仍为socket 2.基于请求响应:通信一定是从客户端开始,服务器端接收到客户端一定会做出对应响应 3.无状态:协议不对任何一次通信状态和任何数据做保存 4.无连接:一次连接只完成一次请求-响应,请求-响应完毕后

Django框架文件保存的流程(以及自定义)

Django框架文件保存的流程 自定义文件存储类过程说明 原文地址:https://www.cnblogs.com/oklizz/p/11311853.html

Python之Django框架执行流程简介

我为大家简单阐述一下Django框架执行的大概流程. Django框架的执行流程    1.浏览器发送请求    2.服务器接收请求并将请求转发给Django框架    3.框架处理请求,如果是请求数据就去找model,如果请求时模版就去找template,然后将模板或数据读取并返回给服务器一个相应.    4.服务器再将相应转发给客户端 原文地址:https://www.cnblogs.com/chao666/p/12093912.html

Django框架&lt;一&gt;

Django框架 Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 一.django的安装实现和目录介绍 1.django实现流程 django #安装: pip3 install django 添加环境变量 #1 创建project django-admin startproject mysite ---mysite ---settings.p

Django框架

Django框架全面讲解 Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. 本文将带大家全面了解Django框架,笔者使用的版本为1.10. 1 Django流程介绍 2 Django 基本配置 一.创建django程序 终端命令:django-admin startproject sitename  (在当前目录下创建一个Django程序) I

框架----Django框架知识点整理

一.cbv 1 cbv(class-base-view) 基于类的视图 2 fbv(func-base-view) 基于函数的视图 a.基本演示 1 urlpatterns = [ 2 3 url(r'^login.html$', views.Login.as_view()), 4 ] urls.py 1 from django.views import View 2 3 class Login(View): 4 """ 5 get 查 6 post 创建 7 put 更新

那些年我们一起玩的Django框架之全面讲解

Web框架之Django: (1)简介: Django是一个由Python写成开源的重量级Web应用框架,采用MTV的框架模式.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件.并于2005年7月在BSD许可证下发布.这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的.Django的优势在于:大而全,框架本身集成了ORM.模型绑定.模板引擎.缓存.Session等诸多功能. (2)Django的处理流程: 1.   

Python Web框架【Django框架第一篇基础】

Django框架第一篇基础[DjangoMTV模式] 老师博客[www.cnblogs.com/yuanchenqi/articles/6811632.html] 同学博客:http://www.cnblogs.com/haiyan123/p/7701412.html Django官网:https://www.djangoproject.com/download/ 一.安装Django DjangoMTV模式 Django的MTV模式本质是各组件之间为了保持松耦合关系,Django的MTV分别代

Django框架(一)

Django框架(一) 一.创建项目 1.检查Django是否安装及版本(Linux & Windows): python -m django --version 2.创建项目(Linux & Windows): django-admin startproject project-name   创建完成后的结构目录   settings.py:该django项目的配置文件 urls.py:项目的URL声明,路由,管理一切url指向 wsgi.py:与WSGI兼容的Web服务器为项目提供服务