一.MTV模型

Django的MTV模式:

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

  Template(,模板):放所有的HTML文件

          模板语法:目的是将变量(数据库内容)如何巧妙的镶嵌到HTML页面中

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

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

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

Django框架的不同之处在于它拆分的三个部分为:Model(模型),Template(模板)和View(视图),也就是MTV框架.

Django框架图示

Django常见命令

在Django的使用过程中需要使用命令让Django进行一些操作,例如常见Django项目,启动Django程序,创建新的APP,数据库迁移等.

创建Django项目

我们新建一个文件夹用来存放项目文件文件,切换到这个目录下,启动命令行工具,创建爱一个名为mysite的Django项目:

django-admin staryproject mysite

创建好项目之后,可以查看当前目录多了一个名为mysite的文件夹,mysite的文件目录结构如下:

mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py

启动Django项目

启动Django项目前,应该先切换到mysite目录下,执行如下命令:

python manage.py runserver    #使用默认8000端口

命令后面还可以指定参数;

python manage.py runserver 8888    #8888为新指定的端口
python manage.py runserver 127.0.0.1:8000    #指定IP和端口,用冒号分隔.

创建APP

一个Django项目可以分为好多APP,用来隔离不同功能模块的代码.

命令行创建

python manage.py statapp app01

执行命令后,项目目录下多出一个app01的文件夹,目录结构如下:

app01/
migrations
__init__.py
__init__.py
admin.py
apps.py
models.py
tests.py
views.py

使用pyCharm创建

可以使用pyCharm的manage.py工具来执行命名.在主菜单栏中选择Tools,在下拉菜单中选择Run manage.py Task,会出现如下图所示的工具对话框:

在弹出的命令窗口直接输入下面的命令便可创建app:

startapp app01

使用pyCharm的manage.py工具执行命令时,只用输入命令及参数即可,不再输入python manage.py了.

数据库迁移

python manage.py makemigrations
python manage.py migrate

创建超级用户

python manage.py createsuperuser

输入以上命令后,根据提示输入用户名,邮箱,密码,确认密码.密码要求至少是八位,不能喝邮箱太接近,两次密码需要一致.

Django的简介的更多相关文章

  1. Python学习(三十)—— Django框架简介

    转载自:http://www.cnblogs.com/liwenzhou/p/8296964.html Django框架简介 一.MVC框架和MTV框架(了解即可) MVC,全名是Model View ...

  2. Django 中间件简介

    Django 中间件简介 django 中的中间件(middleware),在django中,中间件其实就是一个类,在请求到来和结束后,django会根据自己的规则在合适的时机执行中间件中相应的方法. ...

  3. Django框架简介及模板Template,filter

    Django框架简介 MVC框架和MTV框架 MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View) ...

  4. Django框架简介与使用注意事项

    一.Django框架简介 MVC框架和MTV框架 MVC框架 MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model). ...

  5. python 之 Django框架(Django框架简介、视图装饰器、request对象、Response对象)

    12.33 Django框架简介: MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器( ...

  6. wsgiref模块、web框架、django框架简介

    """web框架:将前端.数据库整合到一起的基于互联网传输的python代码 web框架也可以简单的理解为是软件开发架构里面的'服务端'""" ...

  7. 手动搭建简易web框架与django框架简介

    目录 纯手写简易web框架 基于wsgiref模块 动静态网页 简单了解jinja2模块 框架请求流程 python主流web框架 django框架 简介 应用app 命令操作django pycha ...

  8. Python学习笔记_04:Django框架简介

    目录 1 什么是Django? 2 Django框架的开发环境搭建 3 Django操作MySql数据库简介 4 功能强大的Django管理工具应用 1 什么是Django? Django是应用于We ...

  9. 一、Django的简介

    2019-04-09 22:58:22 大家好,我是一名普普通通的运维工程师,不甘平庸,想在工作之余多学习一些编程技能,不仅提升自我,还能应用于公司的运维自动化工作(代码的自动发布等).希望今后在这记 ...

  10. 第1天:Django框架简介与工程创建

    Django简介 Django特点 环境搭建 创建工程 启动服务 使用pycharm打开工程 创建子应用 Django简介 Django,是用Python语言写的开源web开发框架,并遵循MVC设计. ...

随机推荐

  1. 3、RabbitMQ-work queues 工作队列

    work queues 工作队列 1.模型图: 为什么会出现 work queues? 前提:使用 simple 队列的时候 我们应用程序在是使用消息系统的时候,一般生产者 P 生产消息是毫不费力的( ...

  2. Go testing 库 testing.T 和 testing.B 简介

    testing.T 判定失败接口 Fail 失败继续 FailNow 失败终止 打印信息接口 Log 数据流 (cout 类似) Logf format (printf 类似) SkipNow 跳过当 ...

  3. JSP基本指令

    jsp命令指令用来设置与整个jsp页面相关的属性,它并不直接产生任何可见的输出,而只是告诉引擎如何处理其余JSP页面.其一般语法形式为: <%@ 指令名称 属性=“值”%> 三种命令指令分 ...

  4. Unity Loding白屏

    卡loading很多时候是由于网络原因造成的,你可以尝试断网,进入离线模式.如果使用VPN也可以先关闭使用,部分Vpn的配置也会导致该问题出现.最后可以查看一下防火墙的设置.

  5. 3.5mm手机插孔自制万能遥控器

    电视机 空调等遥控器用5MM LED发射二极管 940nm红外发射管 50只 拍一份就是100只 包邮 电压:1.1-1.4v 电流:20mA 发射角度:45°

  6. c#网络加密传输

    网上已经有很多测试,我就不多说了.先说说我的测试. 1.net framework 都应该合适. 2.RSACryptoServiceProvider类在.net core 下无法调用xml导出方法( ...

  7. 搭建Java的运行和开发环境

    Java最大的优势就是跨平台,即编译一次,就能在linux.windows和mac等平台运行,无需再次编译.而典型的C和C++ 则是源代码跨平台,需要根据不同平台的编译规范来进行编译. Java如何跨 ...

  8. 浅谈spj

    SPJ(special judge)是个好玩的东西,毕竟各类神奇的题目SPJ经常作为救火工具(比如说一不小心出成验证类的题目). 但SPJ是个坑,毕竟只让用个“testlib.h”,输入还特别奇怪.今 ...

  9. TopJUI Combobox 联动

    这里给联动进行一个简单定义:因Combobox选择或输入的值发生改变时对自身或者其它组件产生影响称为联动.(注:editable确定是否可以手动输入) 有两种实现方法: 一.自己写对应的onChang ...

  10. 小程序中 function (res)的理解

    刚看到小程序里面一段代码 success: function (res) { console.log('搜索结果:'); console.log(res); wx.hideToast(); if (r ...