最近在学习利用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:安装和启动的更多相关文章

  1. Django安装和启动

    1.django安装 在http://www.djangoproject.com/download/这个网站上可以下载django的最新版本.在下载时,要注意django版本和本机安装的Python版 ...

  2. Django 基础一(安装和启动)

    在开始跟着本文学习Django进行Web开发之前你需要有一定的python编程基础,会用一些简单的Linux系统命令.如果你对python一无所知,请先去这个网站学习一下python编程的基础 Lin ...

  3. Django的安装和启动以及第一个工程的建立

    ---恢复内容开始--- 前提:已经安装了python和Anaconda (windows系统) 在Anaconda安装好之后,其文件夹下有一个叫做Anaconda Prompt的工具,类似windo ...

  4. 第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置

    第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本  uwsgi- ...

  5. python Django 学习笔记(一)—— Django安装

    注:本人python版本2.7.5 ,win7系统 安装Django https://www.djangoproject.com/download/ 官方下载Django-1.5.5.tar.gz 1 ...

  6. django安装配置及测试

    django安装之前我们假设你已经安装了python,和mysql(不是必须的):(如果没有google一下挺简单不介绍了)下面直接介绍django的安装配置:到下面连接可以下载www.djangop ...

  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: ...

  10. django安装与使用

    django安装与使用 --更新中 安装 我这里采用pip安装 pip install django 创建django工程 创建好的工程,会在当前目录.下 django-admin startproj ...

随机推荐

  1. iOS ----------关于动画

    这个网址上的内容很不错.https://github.com/ameizi/DevArticles/issues/91

  2. Android调用系统图库返回路径

    调用系统图库: Intent intent = new Intent(Intent.ACTION_PICK,MediaStore.Images.Media.EXTERNAL_CONTENT_URI); ...

  3. Android广播机制的基本使用

    一提到广播我们第一感觉就会联想到小时候村里面的广播,安卓的广播机制也是类似于大喇叭.有发送广播的地方,也有接收广播的地方.但是具体怎么操作呢,我们来一步一步的看下去~ 安卓的广播种类 系统发送的广播: ...

  4. mysql之数据备份与恢复

    本文内容: 复制文件法 利用mysqldump 利用select into outfile 其它(列举但不介绍) 首发日期:2018-04-19 有些时候,在备份之前要先做flush tables , ...

  5. 前端AntD框架的upload组件上传图片时遇到的一些坑

    前言 本次做后台管理系统,采用的是 AntD 框架.涉及到图片的上传,用的是AntD的 upload 组件. 前端做文件上传这个功能,是很有技术难度的.既然框架给我们提供好了,那就直接用呗.结果用的时 ...

  6. python之restful api(flask)获取数据

    需要用到谷歌浏览器的扩展程序 Advanced Rest Client进行模拟请求 1.直接上代码 from flask import Flask from flask import request ...

  7. windows网络编程中文 笔记(二)

    IPv4 地址段 IPv4地址类别 种类 网络部分 第1个数字 端点数字 A  8位  0-127  16777216 B  16位  128-191  65526 C  24位  193-223   ...

  8. Scala并发编程【进阶】

    package com.dingxin.entrance import java.text.SimpleDateFormat import java.util.Date import scala.ac ...

  9. ExtJS中layout的12种布局风格

    总览 extjs的容器组件都可以设置它的显示风格,它的有效值有 1. absolute,2. accordion, 3. anchor, 4. border, 5. card, 6. column, ...

  10. linux:644、755、777权限详解

    第一位7等于4+2+1,rwx,所有者具有读取.写入.执行权限: 第二位5等于4+1+0,r-x,同组用户具有读取.执行权限但没有写入权限: 第三位5,同上,也是r-x,其他用户具有读取.执行权限但没 ...