Django 基础一(安装和启动)
在开始跟着本文学习Django进行Web开发之前你需要有一定的python编程基础,会用一些简单的Linux系统命令.如果你对python一无所知,请先去这个网站学习一下python编程的基础
Linux的基础命令太多,但是大多数可以现学现用(前提是不在生产环境下,以免出现误操作,删库跑路).用到linux命令的时候如果不懂是什么意思可以自己查询一下.
Django是python采用MTV的架构模式编写的开源Web框架,可以帮助python开发者快速进行Python下的web开发.先简单解释一下MTV的含义:
M 代表模型(Model):负责业务对象和数据库的关系映射,也就是Django中的Model与数据库中表的对应关系,Django中大部分时候一个model对应数据库中的一张表,model的一个field对应数据库的一个字段(ORM)。
T 代表模板 (Template):负责如何把页面展示给用户,这部分只负责前台的数据显示和向后端发送请求,一般不做业务逻辑上的处理(html)。
V 代表视图(View):负责业务逻辑,这一层,接收前端页面的请求调用Model进行业务的逻辑处理,并且将处理结果返回至Template。
对应关系如下图:
.
先说一下我的配置环境:操作系统Ubuntu16.04LTS,python版本是 python3.4.3 ,编辑器用的是ATOM.
如果不知道自己使用的python是哪个版本的话可以先按Ctrl+Alt+T打开终端,输入python,然后按Enter进入python shell,第一行就会告诉你当前使用python的版本.然后再输入quit()退出python shell.如果当前版本还是2.7,你可以用pyenv 安装指定版本的python并且指定系统的默认版本.具体操作请看这里.后续我们会讲如何不切换全局python版本的情况下,在同一台电脑上用不同版本的python进行django的Web开发.
下面开始进入正题:
安装Django
在终端输入:pip install django
这个命令会自动安装最新版本的django,如果你想安装指定版本.可以在后面加版本号,例如安装2.0.4版本的django命令是pip install django==2.0.4
如果提示pip命令没有安装,可以用sudo apt-get install python-pip先安装pip
django安装是否成功可以用下面的方法来检查,先进入python shell,然后导入django,打印版本号:
>>>import django>.
>>>print(django.get_version())
会输出当前的django版本号.则说明django已经安装好了.
Django项目的文件目录结构
Django安装完成之后,先创建一个目录'DjangoLearn'来存放我们的Django项目,具体命令是:
mkdir DjangoLearn.
进入'DjangoLearn'目录:
cd ./DjangoLearn.
接下来我们可以使用django-admin命令来创建我们的项目(project),命令格式是 'django-admin startproject 项目名称'.下面我们创建一个项目名称为'hollow_world'的项目
在终端输入:django-admin startproject hollow_world.
进入项目目录
:cd ./hollow_world
查看项目的目录结构:
ls
.
你会发现目录下有个manage.py的文件,还有一个和项目名称一样的文件目录'hollow_world'.这个在里层的'hollow_world'是存放project的一些基础配置的文件.
进入里层的hollow_world':
cd ./hollow_world
查看项目的目录结构:
ls
.
其中setting.py是配置文件,urls.py是路由设置文件,wsgi.py是与WSGI相关的内容.
启动Django服务
现在是时候来测试一下Django的web服务了.
回到上一层目录
:cd ../
启动Django服务:
python manage.py runserver 8080
runserver默认启用的端口号是8000,这里我用的是8080端口,是因为我的8000端口已经有别的服务占用了.
看到下面的信息说明服务已经启动了:
.
让我们来确认一下.在浏览器输入127.0.0.1:8080,出现下图的页面说明启动成功.
.
Django 基础一(安装和启动)的更多相关文章
- Django基础之安装配置
安装配置 一 MVC和MTV模式 著名的MVC模式:所谓MVC就是把web应用分为模型(M),控制器(C),视图(V)三层:他们之间以一种插件似的,松耦合的方式连接在一起. 模型负责业务对象与数据库的 ...
- django基础(一) - 安装和配置文件
django介绍 Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C. <div style='color: red'> ...
- django基础(web框架,http协议,django安装)
学习Django之前我们先来看什么是OSI七层模型: 应用层 表示层 应用层(五层模型中把这三层合成一个应用层) http协议 会话层 传输层 提供端口对 ...
- 第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置
第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本 uwsgi- ...
- Django源码安装方法及创建启动项目
一.源码安装方法 下载源码包:https://www.djangoproject.com/download/ 输入以下命令并安装: tar xzvf Django-X.Y.tar.gz # 解压下载包 ...
- Web框架之Django_01初识(三大主流web框架、Django安装、Django项目创建方式及其相关配置、Django基础三件套:HttpResponse、render、redirect)
摘要: Web框架概述 Django简介 Django项目创建 Django基础必备三件套(HttpResponse.render.redirect) 一.Web框架概述: Python三大主流Web ...
- Python之路-(js正则表达式、前端页面的模板套用、Django基础)
js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../ 用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m ...
- DJango 基础 (1)
django基础 知识点: 基本认知 工具准备 新建项目 目录及文件说明 开发服务器 创建视图函数 新建应用(app) 1.基本认知 Django是用Python开发的一个免费开源的Web框架,可以用 ...
- Django基础和基本使用
Django基础 Django是Python下的一款著名的Web框架 框架 任何语言进入到高级部分时,会有认证.session.http.连接数据库等等功能操作,没有框架时需要自己实现 框架 是整个或 ...
随机推荐
- 关于mybatis更新数据的问题
前两天用mybatis的时候,发现这样一个问题,日志显示mytatis更新数据已经成功了,但是实际上数据库是没有更新到的,经过一番查找,发现mybatis更新的时候默认返回的是查找到的数据(Rows ...
- Python-网站页面代码获取
Python3.6 库:urllib3, bs4 主程序是抓取亚马逊图书销售排名数据,但是亚马逊应该是加了反爬虫,拒绝疑似机器人的请求,这部分暂时以百度代替. 其实简单的页面抓取,常用的urllib. ...
- EntityFramework 6.x和EntityFramework Core插入数据探讨
前言 一直以来对EF和EF Core都是单独分开来写,从未以比较的形式来讲解,如果您既用过EF 6.x也用过用EF Core是否有了解过EF和EF Core在插入数据时和返回主键有何异同呢?本篇博客是 ...
- my views--软件工程、python
这是大三第二学期开的一门课,由吴世枫老师和王韬助教教的. 大一开了C语言,大二开了java.matlab,而用得最多的应该是学java顺便学会的C++了.matlab在实训和数学建模用了多次,尤其是数 ...
- C#之Redis为所欲为
一 Redis是一种支持多种数据结构的键值对数据库 1.1Redis下载地址 :https://github.com/MicrosoftArchive/Redis 建议下载 .msi结尾的应用程序进行 ...
- 原生 JavaScript 实现扫雷
学习了这么长时间的 JS,不能光看不练,于是就写了个小游戏练习一下.因为自己还是个菜鸟,所以有错误的话还请各位大佬多多指点,谢谢啦~ 如果感兴趣的话可以试试:Demo 项目地址:game-mineSw ...
- 谈论seo思维性对优化中起到决定性的作用
在<SEO的艺术>又出版之后,SEO艺术更加受到了广大SEOer的关注和热捧,在这本书里面,也有很多的不为人知的技巧分享.SEO的艺术强调的是SEO融入网络营销,融入社会化媒体大潮,然而这 ...
- CentOS7 安装 MySQL
一.首先检查 MySQL 是否已安装 yum list installed | grep mysql 如果有的话 就全部卸载 yum -y remove +数据库名称 二.MySQL 依赖 libai ...
- Redis的并发竞争问题的解决方案总结
什么是Redis的并发竞争问题 Redis的并发竞争问题,主要是发生在并发写竞争. 考虑到redis没有像db中的sql语句,update val = val + 10 where ...,无法使用这 ...
- java并发之非阻塞算法介绍
在并发上下文中,非阻塞算法是一种允许线程在阻塞其他线程的情况下访问共享状态的算法.在绝大多数项目中,在算法中如果一个线程的挂起没有导致其它的线程挂起,我们就说这个算法是非阻塞的. 为了更好的理解阻塞算 ...