一、MVC模式

MVC(Model-View-Controller),中文名“模型-视图-控制器”,是一个好的Web应用开发所遵循的模式,它有利于把Web应用的代码分解为易于管理的功能模块。

M:Model是用来传给View的,View在替换变量的时候,可以从Model中取出相应的数据。

V:View负责显示逻辑,是包含变量的模板,通过简单地替换一些变量,View最终输出的就是用户看到的HTML;

C:Controller负责业务逻辑,将Web应用'粘合'在一起,比如检查用户名是否存在,取出用户信息等,是Python处理URL的函数;

关系图:

流程:

1、用户发起请求;

2、请求转发给controller,controller将请求分发给对应的视图函数;

3、视图函数请求Model获取对应的data;

4、通过View进行渲染HTML模板;

5、返回内容给用户

 Django中使用的MTV模式,基本上类似。

  • Model(模型):负责业务对象与数据库的对象(ORM)
  • Template(模板):负责如何把页面展示给用户(HTML)
  • View(视图):负责业务逻辑,并在适当的时候调用Model和Template
  • 此外,Django专门有一个url分发器,它的作用是将一个个URL的请求分发给不同的view处理,view再返回相应的Model和Template的结果。

二、Django流程

Django是一个开放源代码的Web应用框架,由Python写成。采用了MVC的框架模式,即模型M,视图V和控制器C。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。

1、安装

安装之前,要选择好对应的版本:

由于目前我们主要使用py2.7居多,但是考虑到以后要兼容py3,所以这里选项安装Django 1.11版本。

pip  install django

  

2、设置环境变量

环境变量设置好了以后,就可以在任意位置执行django相关的命令了。

3、创建项目(project),一个工程,工程下面可以有多个应用

我这里直接在virtual里面创建,这样不会把正式环境的环境破坏。且最新的pycharm也给你安装了一个venv环境,可以直接使用。

setttings:全局设置,包括:app、middleware、urlconf、template、statics等设置;

urls:设置url和视图函数的对应关系;

wsgi:启动相关

4、创建应用(app)-一个应用

app的文件解析

admin:Django自带的后台管理模块;

apps:应用注册器;

models:数据模型;

tests:测试样例;

views:视图函数;

migrations:数据库同步工具;

5、启动设置

Django是通过manage.py启动,需要在pycharm上设置启动参数:

启动Django:

访问:

至此,Django跑起来了。

此外,我们还看到了Django自带了admin后台管理,也可以进行访问到,当然,需要设置用户名和密码后才能进入。

欲知后台怎么登录,请听下回分解。

三、Django安装和流程的更多相关文章

  1. 基于Python的Webservice开发(三)-Django安装配置

    一.安装Django pip install django 二.创建项目 进入指定的目录后 django-admin startproject WebApi 目录说明: WebApi 项目的容器. m ...

  2. django基础(web框架,http协议,django安装)

    学习Django之前我们先来看什么是OSI七层模型: 应用层 表示层       应用层(五层模型中把这三层合成一个应用层) http协议 会话层 传输层                  提供端口对 ...

  3. Django安装和web框架原理

    Django安装和web框架原理 在PyCharm中安装 在cmd中输入 django-admin startproject 项目名 如果报错 不是内部或外部命令,也不是可运行的程序 需要添加环境变量 ...

  4. python,django安装

    环境:win7 64位 软件:python3.4.3,jdango1.8,PyDev,pymysql0.7 一:安装python 1.安装好python好后,配置环境变量,可以参考其它的博客,本博客只 ...

  5. OpenStack Keystone安装部署流程

    之前介绍了OpenStack Swift的安装部署,采用的都是tempauth认证模式,今天就来介绍一个新的组件,名为Keystone. 1. 简介 本文将详细描述Keystone的安装部署流程,并给 ...

  6. Django学习(一) Django安装配置

    上一节介绍了如何搭建Python的开发环境,这次介绍一下如何搭建Django的开发环境. 第一.下载Django Django跟Python的版本对应 Django version Python ve ...

  7. Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置

    近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...

  8. (转载)Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置

    近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...

  9. Django 安装配置

    1-安装Python3.6.1 Python2.x 与3.x的版本在语法上稍有不同,区别在于输出语句的不同,这个可以看相关的文档. Python3.6.1,可以在Python的官网上下载:https: ...

随机推荐

  1. Owin+ASP.NET Identity浅析系列(三)框架结构分析

    在今天,读书有时是件“麻烦”事.它需要你付出时间,付出精力,还要付出一份心境.--仅以<Owin+ASP.NET Identity浅析系列>来祭奠那逝去的…… 前两篇博客仅仅说了下功能如何 ...

  2. 人人开源之代码生成器(renren-generator)

    本篇文章,主要包含三个部分,介绍.代码生成演示.代码分析(不会很深入)等 三个部分足以让你学会使用,实际生产可能遇到的问题不会在这遇到. 代码生成器的作用在于提高开发效率.但是这个代码生成器仍有其局限 ...

  3. linux性能指标及分析工具

    一.CPU 1.良好状态指标 CPU利用率:User Time <= 70%,System Time <= 35%,User Time + System Time <= 70%. 上 ...

  4. ./redis-trib.rb 报错:/usr/local/rvm/gems/ruby-2.4.2/gems/redis-4.0.1/lib/redis/client.rb:119:in `call': ERR Slot 0 is already busy (Redis::CommandError)

    错误提示是 slot插槽被占用了(这是 搭建集群前时,以前redis的旧数据和配置信息没有清理干净.) 解决方案是 用redis-cli 登录到每个节点执行  flushall  和 cluster ...

  5. UIImage指定区域自由拉伸

    UIImage的 resizableImageWithCapInsets 可以指定需要拉伸的位置,这个方法很有用,可以减少长短按钮数量

  6. 怎么在苹果Mac虚拟机上安装Win7

    怎么在苹果Mac虚拟机上安装Win7 使用 Mac 系统的用户,因为一些软件或是应用的原因,可能需要 Windows 系统才能完成.那如果不想在自己的 Mac 电脑上安装双启动系统的话,我们还可以在 ...

  7. CentOS 7 Minimal 安装JDK 1.8

    真好最近比较闲,打算在linux 的CentOS 7 Minimal版本试着搭建hadoop环境学习学习,当然第一步就是在CentOS 7 Minimal 安装JDK 1.8环境.其实老早就打算了解一 ...

  8. 文库网站建设,文库网站PHP代码,TP开发文库网

    专业定制仿百度文库网站系统,文库网站系统源码,文库‌‌网站建设开发,支持电脑版+手机版+微信版+小程序版+APP版,由10年的技术团队专业定制,需要的朋友可以联系我们.网站采用:PHP+MySQL+t ...

  9. MQTT入门1 -- mosquitto 安装

    原文链接:https://www.cnblogs.com/NickQ/p/9247638.html MQTT入门1 -- mosquitto 安装 简介: MQTT(Message Queuing T ...

  10. 移植触摸屏驱动到linux3.4.2

    1. 修改drivers/input/touchscreen/下的Makefile #obj-$(CONFIG_TOUCHSCREEN_S3C2410) += s3c2410_ts.o obj-$(C ...