搭建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查询sqlite数据表的方法
May 08 Python
python 简单的多线程链接实现代码
Aug 28 Python
Python编程pygal绘图实例之XY线
Dec 09 Python
PyQt5每天必学之拖放事件
Aug 27 Python
python 自动去除空行的实例
Jul 24 Python
在Python中关于使用os模块遍历目录的实现方法
Jan 03 Python
选择Python写网络爬虫的优势和理由
Jul 07 Python
PyCharm无法引用自身项目解决方式
Feb 12 Python
解决python 在for循环并且pop数组的时候会跳过某些元素的问题
Dec 11 Python
python regex库实例用法总结
Jan 03 Python
win10+anaconda安装yolov5的方法及问题解决方案
Apr 29 Python
Elasticsearch 聚合查询和排序
Apr 19 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(3)
2006/10/09 PHP
php 字符串压缩方法比较示例
2014/01/23 PHP
zf框架的zend_cache缓存使用方法(zend框架)
2014/03/14 PHP
FireBug 调试JS入门教程 如何调试JS
2013/12/23 Javascript
js获取视频时长代码
2014/04/10 Javascript
BootStrap中的Fontawesome 图标
2017/05/25 Javascript
解决webpack打包速度慢的解决办法汇总
2017/07/06 Javascript
使用JavaScript实现点击循环切换图片效果
2017/09/03 Javascript
JS路由跳转的简单实现代码
2017/09/21 Javascript
Three.js利用性能插件stats实现性能监听的方法
2017/09/25 Javascript
利用jQuery实现简单的拖曳效果实例代码
2017/10/20 jQuery
vue组件中使用props传递数据的实例详解
2018/04/08 Javascript
迅速了解一下ES10中Object.fromEntries的用法使用
2019/03/05 Javascript
在Vue项目中使用jsencrypt.js对数据进行加密传输的方法
2019/04/17 Javascript
Vue.js组件实现选项卡以及切换特效
2019/07/24 Javascript
超简单的微信小程序轮播图
2019/11/22 Javascript
[38:38]完美世界DOTA2联赛PWL S3 access vs Rebirth 第二场 12.17
2020/12/18 DOTA
python UNIX_TIMESTAMP时间处理方法分析
2016/04/18 Python
python3.x上post发送json数据
2018/03/04 Python
Python numpy 点数组去重的实例
2018/04/18 Python
Python处理CSV与List的转换方法
2018/04/19 Python
基于python判断目录或者文件代码实例
2019/11/29 Python
详解Python的爬虫框架 Scrapy
2020/08/03 Python
基于Python的一个自动录入表格的小程序
2020/08/05 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
2020/12/07 Python
教师校本培训方案
2014/02/26 职场文书
保密工作责任书
2014/04/16 职场文书
关于热爱祖国的演讲稿
2014/05/04 职场文书
员工廉洁自律承诺书
2014/05/26 职场文书
护理专业求职信
2014/06/15 职场文书
《有余数的除法》教学反思
2016/02/22 职场文书
美甲店的创业计划书模板
2019/08/23 职场文书
500字作文之关于爸爸
2019/11/14 职场文书
为什么你写的height:100%不起作用
2021/05/10 HTML / CSS
Keras多线程机制与flask多线程冲突的解决方案
2021/05/28 Python
SQL Server中的逻辑函数介绍
2022/05/25 SQL Server