码迷,mamicode.com
首页 > 其他好文 > 详细

django 基础 学习

时间:2020-03-12 22:00:10      阅读:58      评论:0      收藏:0      [点我收藏+]

标签:html   展示   数据   mod   ref   预处理   model   django   bsp   

认识MVC与MTV

著名的MVC模式:所谓MVC就是把web应用分为模型(M),控制器(C),视图(V)三层;他们之间以一种插件似的,松耦合的方式连接在一起。

模型负责业务对象与数据库的对象(ORM),视图负责与用户的交互(页面),控制器(C)接受用户的输入调用模型和视图完成用户的请求。

技术图片

 

 

 

Django的MTV模式本质上与MVC模式没有什么差别,也是各组件之间为了保持松耦合关系,只是定义上有些许不同,Django的MTV分别代表:

       Model(模型):负责业务对象与数据库的对象(ORM)

       Template(模版):负责如何把页面展示给用户

       View(视图):负责业务逻辑,并在适当的时候调用Model和Template

       此外,Django还有一个url分发器,它的作用是将一个个URL的页面请求分发给不同的view处理,view再调用相应的Model和Template

技术图片

 

 

 创建Django项目命令:

django-admin startproject mysite

#创建一个名为mysite的项目

创建应用APP命令:

python mannage.py startapp app01

#创建了一个名为app01的app

运行项目命令:

python manage.py runserver

Django 网络访问流程:

技术图片

 

 

 

1,用户通过浏览器发送请求,到达WSGI服务器,使用其handler方法来处理HTTP请求(其实最终是调用wsgiref.handlers.BaseHandler中的run方法处理);
2,请求到达request中间件,中间件对request请求进行预处理或者直接返回response;
3,如果没有response,到达url进行匹配,找到相应的视图函数;
4,视图函数做出相应处理或者直接返回response;
5,视图层View 可以通过Model层与数据库进行交互;
6,取得相应数据后返回给template模板;
7,通过response展示给客户.

项目内各个文件的简单解释:

  1. manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
  2. __init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
  3. settings.py: Django 项目的设置/配置。
  4. urls.py: Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"
  5. wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

技术图片

 

 返回值的三种方法:

在app目录下的views.py:

from django.shortcuts import render,HttpResponse,redirect

# Create your views here.

def index(request):
    return HttpResponse(第一个视图)

def login(request):
    name = "王钰鑫"
    return render(request,"login.html",{"名字":name})

def reg(request):
    return redirect("/index")

在项目目录下的urls.py:

from django.contrib import admin
from django.urls import path
from Yux_app import views

urlpatterns = [
    path(admin/, admin.site.urls),
    path(index/,views.index),
    path(login/,views.login),
    path(reg/,views.reg)

]

 

django 基础 学习

标签:html   展示   数据   mod   ref   预处理   model   django   bsp   

原文地址:https://www.cnblogs.com/yx3445/p/12482851.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!