zoukankan      html  css  js  c++  java
  • MVC和MTV框架模式

    1. MVC:
        MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller),具有耦合性低、重用性高、生命周期成本低等优点。
    
    

    django -- MTV

    Django框架的设计模式借鉴了MVC框架的思想,也是分成三部分,来降低各个部分之间的耦合性。

     M -- models 数据库相关(orm)
     T -- templates HTML相关 html就是模板
     V -- views  视图相关(逻辑)
     + controller url控制器(url分发器,路由分发)
    
    #manage.py ----- 
    	Django项目里面的工具,通过它可以调用django shell和数据库,启动关闭项目与项目交互等,不管你将框架分了几个文件,必然有一个启动文件,其实他们本身就是一个文件。
    #settings.py ---- 
    	包含了项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。
    #urls.py ----- 
    	负责把URL模式映射到应用程序,路由分发,控制器
    #wsgi.py ---- 
    	runserver命令就使用wsgiref模块做简单的web server,后面会看到renserver命令,所有与socket相关的内容都在这个文件里面了,目前不需要关注它。
    '''创建的应用的目录结构'''
    #models.py 
    	之前我们写的那个名为model的文件就是创建表用的,这个文件就是存放与该app(应用)相关的表结构的
    #views.py
    	存放与该app相关的视图函数的,逻辑函数
    

    Djiango路由分发

    # 无名分组参数
    	url(r'^articles/(d+)/(d+)/', views.articles), #articles/2019/9/
    	def articles(request,year,month):  # 位置参数 2019  9
             print(year,type(year)) #2019 <class 'str'>  #匹配出来的所有数据都是字符串
             print(month)  
             return HttpResponse(year+'年'+ month +'月' +'所有文章')
    # 有名分组参数
        url(r'^articles/(?P<xx>d+)/(?P<oo>d+)/', views.articles), #articles/2019/9/
        #xx=2019  oo=9  关键字传参
        def articles(request,oo,xx):  # 关键字传参 2019  9    
            # 参数名就是在url中写的名字 oo,xx
            print(xx,type(xx)) #2019 <class 'str'>  #匹配出来的所有数据都是字符串
            print(oo)
            return HttpResponse(xx+'年'+ oo +'月' +'所有文章')
    
  • 相关阅读:
    ambry集群搭建(无SSL验证的方式)
    接口属性命名不规范的处理方式
    windows下搭建ElasticSearch
    MyBatis-Plus分页插件——PageHelper和IPage原理介绍
    饥荒服务器搭建加mod使用 阿里云服务器 Ubuntu18
    WSL2+Ubuntu20.04桌面功能配置
    设计模式学习总结(Java版)
    Java in 蓝桥杯
    Windows 批处理脚本学习
    Vue风格指南小结
  • 原文地址:https://www.cnblogs.com/zhufanyu/p/11662353.html
Copyright © 2011-2022 走看看