搭建Python的Django框架环境并建立和运行第一个App的教程


Posted in Python onJuly 02, 2016

Django是python中目前风靡的Web Framework, 那么什么叫做Framework呢, 框架能够帮助你把程序的整体架构搭建好, 而我们所需要做的工作就是填写逻辑, 而框架能够在合适的时候调用你写的逻辑, 而不需要我们自己去调用逻辑, 让Web开发变的更敏捷.

Django是一个高级Python Web框架, 鼓励快速,简洁, 以程序设计的思想进行开发. 通过使用这个框架, 可以减少很多开发麻烦, 使你更专注于编写自己的app, 而不需要重复造轮子. Django免费并且开源.
Django特点:

  • 完全免费并开源源代码
  • 快速高效开发
  • 使用MTV架构(熟悉Web开发的应该会说是MVC架构)
  • 强大的可扩展性.
  • Django工作方式

Django安装
安装最新版的Django版本

#安装最新版本的Django
$ pip install django 
#或者指定安装版本
pip install -v django==1.7.1

项目创建
现在正式开始吧, 我们创建一个名为my_blog的Django项目。
创建项目的指令如下:

$ django-admin.py startproject my_blog

现在来看一下整个项目的文件结构:

$ tree my_blog  #打印树形文件结构
my_blog
├── manage.py
└── my_blog
  ├── __init__.py
  ├── settings.py
  ├── urls.py
  └── wsgi.py


1 directory, 5 files

建立Django app
在Django中的app我认为就是一个功能模块, 与其他的web框架可能有很大的区别, 将不能功能放在不同的app中, 方便代码的复用。
建立一个article app:

$ python manage.py startapp article

现在让我们重新看一下整个项目的结构

── article
│  ├── __init__.py
│  ├── admin.py
│  ├── migrations
│  │  └── __init__.py
│  ├── models.py
│  ├── tests.py
│  └── views.py
├── db.sqlite3
├── manage.py
├── my_blog
  ├── __init__.py
  ├── __pycache__
  │  ├── __init__.cpython-34.pyc
  │  ├── settings.cpython-34.pyc
  │  ├── urls.cpython-34.pyc
  │  └── wsgi.cpython-34.pyc
  ├── settings.py
  ├── urls.py
  └── wsgi.py

并在my_blog/my_blog/setting.py下添加新建app

INSTALLED_APPS = (
  ...
  'article', #这里填写的是app的名称
)

运行程序

$ python manage.py runserver  #启动Django中的开发服务器
#如果运行上面命令出现以下提示
You have unapplied migrations; your app may not work properly until they are applied.
Run 'python manage.py migrate' to apply them.
#请先使用下面命令
python manage.py migrate
#输出如下信息
Operations to perform:
 Apply all migrations: contenttypes, sessions, admin, auth
Running migrations:
 Applying contenttypes.0001_initial... OK
 Applying auth.0001_initial... OK
 Applying admin.0001_initial... OK
 Applying sessions.0001_initial... OK

运行成功后,会显示如下信息

#重新运行启动Django中的开发服务器
$ python manage.py runserver
#运行成功显示如下信息
System check identified no issues (0 silenced).
December 21, 2014 - 08:56:00
Django version 1.7.1, using settings 'my_blog.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

现在可以启动浏览器, 输入http://127.0.0.1:8000/, 当出现

搭建Python的Django框架环境并建立和运行第一个App的教程

说明你成功走出了第一步!
命令梳理:

python manage.py <command> [options] #Django Command python manange.py -h帮助文档
django-admin.py startproject my_blog #创建项目
python manage.py startapp article #创建app

Python 相关文章推荐
用Python编写简单的定时器的方法
May 02 Python
在ironpython中利用装饰器执行SQL操作的例子
May 02 Python
python爬取网页内容转换为PDF文件
Jul 28 Python
python同时遍历数组的索引和值的实例
Nov 15 Python
Python实现网站表单提交和模板
Jan 15 Python
详解python中init方法和随机数方法
Mar 13 Python
Django Rest framework认证组件详细用法
Jul 25 Python
python paramiko远程服务器终端操作过程解析
Dec 14 Python
Python安装与卸载流程详细步骤(图解)
Feb 20 Python
Python Selenium安装及环境配置的实现
Mar 17 Python
Python语法垃圾回收机制原理解析
Mar 25 Python
python中pivot()函数基础知识点
Jan 03 Python
Python使用poplib模块和smtplib模块收发电子邮件的教程
Jul 02 #Python
python图片验证码生成代码
Jul 02 #Python
Python彩色化Linux的命令行终端界面的代码实例分享
Jul 02 #Python
Python使用迭代器打印螺旋矩阵的思路及代码示例
Jul 02 #Python
Python使用ntplib库同步校准当地时间的方法
Jul 02 #Python
Python编程中对super函数的正确理解和用法解析
Jul 02 #Python
Python中的复制操作及copy模块中的浅拷贝与深拷贝方法
Jul 02 #Python
You might like
php 获取select下拉列表框的值
2010/05/08 PHP
thinkPHP中create方法与令牌验证实例浅析
2015/12/08 PHP
php操作xml并将其插入数据库的实现方法
2016/09/08 PHP
对PHP依赖注入的理解实例分析
2016/10/09 PHP
Laravel Validator 实现两个或多个字段联合索引唯一
2019/05/08 PHP
Jquery常用技巧收集整理篇
2010/11/14 Javascript
dojo随手记 gird组件引用
2011/02/24 Javascript
利用javascript判断文件是否存在
2013/12/31 Javascript
jQuery中操控hidden、disable等无值属性的方法
2014/01/06 Javascript
js 获取、清空input type=&quot;file&quot;的值示例代码
2014/02/19 Javascript
js拆分字符串并将分割的数据放到数组中的方法
2015/05/06 Javascript
JavaScript调用浏览器打印功能实例分析
2015/07/17 Javascript
JS 获取HTML标签内的子节点的方法
2016/09/21 Javascript
JavaScript实现的select点菜功能示例
2017/01/16 Javascript
node.js实现复制文本到剪切板的功能
2017/01/23 Javascript
axios学习教程全攻略
2017/03/26 Javascript
Node.js进阶之核心模块https入门
2018/05/23 Javascript
详解关于element el-button使用$attrs的一个注意要点
2018/11/09 Javascript
vue路由前进后退动画效果的实现代码
2018/12/10 Javascript
vue 使用async写数字动态加载效果案例
2020/07/18 Javascript
python实现支付宝转账接口
2019/05/07 Python
浅谈Python中的生成器和迭代器
2020/06/19 Python
五分钟学会怎么用Pygame做一个简单的贪吃蛇
2021/01/06 Python
css3图片边框border-image的用法
2017/06/30 HTML / CSS
SneakerStudio英国:最佳运动鞋商店
2019/05/22 全球购物
接受捐赠答谢词
2014/01/27 职场文书
理工大学毕业生自荐信范文
2014/02/22 职场文书
男女朋友协议书
2014/04/23 职场文书
班长演讲稿范文
2014/04/24 职场文书
群众路线教育实践活动个人对照检查材料
2014/09/22 职场文书
运动会通讯稿200字
2015/07/20 职场文书
男方家长婚礼致辞
2015/07/27 职场文书
学校扫黄打非工作总结
2015/10/15 职场文书
推广普通话宣传标语口号
2015/12/26 职场文书
SpringBoot整合Redis入门之缓存数据的方法
2021/11/17 Redis
利用 JavaScript 构建命令行应用
2021/11/17 Javascript