在开始跟着本文学习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,出现下图的页面说明启动成功.

.

最新文章

  1. Win10 UI动画
  2. Xcode7中你一定要知道的炸裂调试神技
  3. C#显示SQL语句格式
  4. BZOJ-3130 费用流 (听题目胡扯丶裸最大流) 二分判定+最大流+实数精度乱搞
  5. C#堆栈讲解
  6. C#中Config文件中,特殊符号的书写方法。
  7. Restrict each user to a single session in window server 2008 R2 or 2012
  8. Linux 内核进程管理之进程ID 。图解
  9. Java-struts2的问题 java.lang.NoClassDefFoundError: org/apache/commons/lang3/StringUtils
  10. IN改写关联注意事项!
  11. protocol buffer使用简介
  12. GCC编译选项
  13. spring mvc自定义注解--登录时密码加密注解
  14. 1019 Least Common Multiple
  15. cloudstack下libvirtd服务无响应问题
  16. LeetCode(55)- Palindrome Linked List
  17. Chapter 5 Blood Type——31
  18. MariaDB第二章:基本增删改查
  19. ThinkPHP设计模式与Trait技术
  20. 国内最火的10款Java开源项目,都是国人开发,CMS居多

热门文章

  1. 发现DELL笔记本一个很弱智的问题
  2. ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?
  3. Pod install 之后 no such module
  4. Django单元测试简明实践
  5. html5 下拉刷新(pc+移动网页源码)
  6. Java的精确整数计算-Bigdecimal学习总结和工具类
  7. ElasticSearch Index 速度优化 (官方翻译)
  8. BOM和DOM的区别
  9. Java 算法(二)
  10. capwap学习笔记——capwap的前世今生(转)