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 ...
随机推荐
- iOS ----------关于动画
这个网址上的内容很不错.https://github.com/ameizi/DevArticles/issues/91
- Android调用系统图库返回路径
调用系统图库: Intent intent = new Intent(Intent.ACTION_PICK,MediaStore.Images.Media.EXTERNAL_CONTENT_URI); ...
- Android广播机制的基本使用
一提到广播我们第一感觉就会联想到小时候村里面的广播,安卓的广播机制也是类似于大喇叭.有发送广播的地方,也有接收广播的地方.但是具体怎么操作呢,我们来一步一步的看下去~ 安卓的广播种类 系统发送的广播: ...
- mysql之数据备份与恢复
本文内容: 复制文件法 利用mysqldump 利用select into outfile 其它(列举但不介绍) 首发日期:2018-04-19 有些时候,在备份之前要先做flush tables , ...
- 前端AntD框架的upload组件上传图片时遇到的一些坑
前言 本次做后台管理系统,采用的是 AntD 框架.涉及到图片的上传,用的是AntD的 upload 组件. 前端做文件上传这个功能,是很有技术难度的.既然框架给我们提供好了,那就直接用呗.结果用的时 ...
- python之restful api(flask)获取数据
需要用到谷歌浏览器的扩展程序 Advanced Rest Client进行模拟请求 1.直接上代码 from flask import Flask from flask import request ...
- windows网络编程中文 笔记(二)
IPv4 地址段 IPv4地址类别 种类 网络部分 第1个数字 端点数字 A 8位 0-127 16777216 B 16位 128-191 65526 C 24位 193-223 ...
- Scala并发编程【进阶】
package com.dingxin.entrance import java.text.SimpleDateFormat import java.util.Date import scala.ac ...
- ExtJS中layout的12种布局风格
总览 extjs的容器组件都可以设置它的显示风格,它的有效值有 1. absolute,2. accordion, 3. anchor, 4. border, 5. card, 6. column, ...
- linux:644、755、777权限详解
第一位7等于4+2+1,rwx,所有者具有读取.写入.执行权限: 第二位5等于4+1+0,r-x,同组用户具有读取.执行权限但没有写入权限: 第三位5,同上,也是r-x,其他用户具有读取.执行权限但没 ...