Django:安装和启动
最近在学习利用python语言进行web站点开发,使用的框架是Django。这篇博客主要介绍Django的安装和简单使用。
一、Django介绍
Django是一个开源的Web应用框架,由Python写成,基于MVC构造。但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Model)、
模板(Template)和视图(Views),称为 MTV模式。它们各自的职责如下:
| 层次 | 职责 |
| 模型(model):数据存取层 | 处理与数据相关的所有事务:如何存取、验证有效性、包含哪些行为以及数据关系等 |
| 视图(view):表现层 | 处理与表现相关的决定:如何在页面或其他类型的文档中进行显示 |
| 模板(template):业务逻辑层 | 存取模型及调取恰当模板的相关逻辑,即模型与模板的桥梁 |
1、设计哲学
Django的主要目的是简便、快速的开发数据库驱动的网站。强调代码复用,多个组件可以很方便的以“插件”形式服务于整个框架。
Django有许多功能强大的第三方插件,甚至可以很方便的开发出自己的工具包,具有很强的可扩展性。它还强调快速开发和DRY(Do Not Repeat Yourself)原则。
2、工作机制
①、用manage .py runserver启动Django服务器时就载入了在同一目录下的settings.py。该文件包含了项目中的配置信息,其中最重要的配置就是ROOT_URLCONF,
它告诉Django哪个Python模块应该用作本站的URLConf,默认的是urls.py;
②、当访问url的时候,Django会根据ROOT_URLCONF的设置来装载URLConf;
③、按顺序逐个匹配URLConf里的URLpatterns。如果找到则会调用相关联的视图函数,并把HttpRequest对象作为第一个参数(通常是request);
④、最后该view函数负责返回一个HttpResponse对象;

二、安装
Django框架更新较为频繁,每个版本之间总是有些差异的,因此可以根据下面的python和Django匹配情况选择版本进行安装。
Django对python各版本的支持情况如下表:
| Django version | Python version |
| 1.8 | 2.7,3.3,3.4,3.5 |
| 1.9,1.10 | 2.7,3.4,3.5 |
| 1.11 | 2.7,3.4,3.5,3.6 |
| 2.0 | 3.5+ |
PS:由于Python2.7版本预计2020年之后将不再维护,所以我使用的是Python3.6.2版本,Django为2.0版本。
安装方式:
①、通过pip命令进行安装:
pip install django(默认为Django最新版本)
pip install django==2.0.2(Django截至目前最新版本,这里只是为了方便演示,安装自己需要的版本),更多相关资料可参考这里:Django
②、通过下载安装文件进行安装:
django官方网站:https://www.djangoproject.com/
python官方仓库:https://pypi.python.org/pypi/Django
三、使用
1、新建一个项目
通过cmd命令,新建一个目录Test

目录结构如下:

__init__.py:让Python把该目录当成一个标准的开发包;
settings.py:django项目的配置文件;
urls.py:django项目的URL配置文件;
wsgi.py:wsgi是Python语言定义的web服务器,为项目提供的一种服务接口;
manage.py:命令行工具,可以用多种方式与该django项目进行交互;
2、创建并运行应用
①、通过cmd命令,在Test项目下新建一个应用webdev:

应用目录如下:

migrations/:记录models中的数据变更;
admin.py:映射models中的数据到admin后台;
apps.py:对创建的应用进行配置,比如新增文件;
models.py:Django模型文件,创建应用程序的数据表模型;
tests.py:创建测试用例;
views.py:Django视图文件,控制向前端页面传输的内容;
②、通过cmd命令运行项目:

默认情况下,会在8000端口启动一个本地服务器。当然,如果遇到端口被占用或者其他情况,可以自定义端口,比如上面的命令中,我使用了8001端口、
在浏览器输入127.0.0.1:8001,启动后可以看到如下界面,就说明我们的应用服务成功启动:

PS:如果想要其他计算机也可以访问该页面,则执行如下命令:
python manage.py runserver 0.0.0.0:8001
0.0.0.0这个IP地址告诉服务器去侦听任意的网络接口。这样,在本地网络中的其他计算机就可以在浏览器中通过服务器的IP地址来访问该页面。
以上就是关于Django的介绍、安装和简单使用,后续会介绍如何利用django开发一个简单的web应用。
更多资料可参考这里:菜鸟教程:Django
Django:安装和启动的更多相关文章
- Django安装和启动
1.django安装 在http://www.djangoproject.com/download/这个网站上可以下载django的最新版本.在下载时,要注意django版本和本机安装的Python版 ...
- Django 基础一(安装和启动)
在开始跟着本文学习Django进行Web开发之前你需要有一定的python编程基础,会用一些简单的Linux系统命令.如果你对python一无所知,请先去这个网站学习一下python编程的基础 Lin ...
- Django的安装和启动以及第一个工程的建立
---恢复内容开始--- 前提:已经安装了python和Anaconda (windows系统) 在Anaconda安装好之后,其文件夹下有一个叫做Anaconda Prompt的工具,类似windo ...
- 第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置
第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本 uwsgi- ...
- python Django 学习笔记(一)—— Django安装
注:本人python版本2.7.5 ,win7系统 安装Django https://www.djangoproject.com/download/ 官方下载Django-1.5.5.tar.gz 1 ...
- django安装配置及测试
django安装之前我们假设你已经安装了python,和mysql(不是必须的):(如果没有google一下挺简单不介绍了)下面直接介绍django的安装配置:到下面连接可以下载www.djangop ...
- Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置
近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...
- (转载)Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置
近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...
- Django 安装配置
1-安装Python3.6.1 Python2.x 与3.x的版本在语法上稍有不同,区别在于输出语句的不同,这个可以看相关的文档. Python3.6.1,可以在Python的官网上下载:https: ...
- django安装与使用
django安装与使用 --更新中 安装 我这里采用pip安装 pip install django 创建django工程 创建好的工程,会在当前目录.下 django-admin startproj ...
随机推荐
- css优先级计算规则——权重
一.css的优先级 当对同一个元素设置相同的多个声明时,会按照优先级的高低选择应用哪种声明. <style> #id{ color:red; } p{ color:blue; } < ...
- 微软语音引擎 TTS 最基本使用
TTS(TextToSpeak) 需求:需要借助程序实现 文字合成语音/语音识别. TTS 介绍就不说了,这里介绍非常详细 >>> TTS详细介绍 + SAPI(微软的TTS语音 ...
- (后端)spring的@Transactional注解详细用法(转)
转自一人浅醉-博客园: 事务隔离级别 隔离级别是指若干个并发的事务之间的隔离程度.TransactionDefinition 接口中定义了五个表示隔离级别的常量: TransactionDefinit ...
- 使用C#+PowerShell进行Windows系统间文件传输
新的winserver2016支持了一种nano模式,像以前的core模式,只能远程管理,只支持x64,只有610M,不让CentOS mini版独美. 这个nano版,默认只开启WinRM,所以只能 ...
- html5常见新增标签
本文内容: header nav article footer section aside datalist 音频标签: audio 视频标签: video 插入媒体标签: embed 新增input ...
- UnrealEd3视图导航及常用快捷键
本博客使用的版本:2010-08 [更多其他的UE3版本][tps所用版本: 2011-02] [最新的UE3版本 -- 2015-02] [unreal engine wiki 中文w ...
- Python之给程序传参数
1.代码 import sys # 导入系统 args = sys.argv # 获取系统参数 if(args.__len__() == 2): print("%s是世界上最好的语言!&qu ...
- Windows Server 2016-Windows Server Backup功能
一.Windows Server Backup 介绍: Windows Server Backup 是一种功能,它提供了一组向导和其他工具,大概从WinSer2008开始Win Ser Backup引 ...
- spring拦截器(interceptor)简介
1. 拦截器用途 (1)拦截未登录用户直接访问某些链接 (2)拦截日志信息 (3)拦截非法攻击,比如sql注入 2. 涉及jar.类 (1)spring-webmvc.jar (2)HandlerIn ...
- ubuntu 打开eclipse出现A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be ... 解决方法(转载)
原创作者:http://www.cnblogs.com/jerome-rong/archive/2013/02/19/2916608.html Java RunTime Environment (JR ...