Django开发博客 入门篇
Django是神马?
Django是一个开源免费的Web框架,使用Python编写。能够让你快速写出一个Web应用, 因为它包含了绝大部分的组件,比如认证,表单,ORM,Session,安全,文件上传,页面模板等,避免了重复造轮子。
官方网站:https://www.djangoproject.com/
笔者写这篇教程的时候,最新版本是1.9
安装Django1.9
安装python虚拟环境
为了开发应用的时候使用单独的环境,最好是安装virtual environment, 这样有很好的独立性,可以在里面乱搞而不会影响到其他的应用开发。
下面我以cetnos6.5测试环境为例子介绍怎样去安装python的virtual environment, 该测试机的IP地址是192.168.203.95。
1,先安装python3
centos6.5上面默认没有安装python3,那么需要先安装python3。 注意不能简单的使用yum去安装。关于这个教程,可以去网上搜索下。
笔者给出一个参考:[centos6上面安装python3.5][http://www.jianshu.com/p/6199b5c26725]
2, 安装virtualenv
1 |
pip3 install virtualenv |
关于virtualenv的详细说明,请参考文档:[virtualenv][https://virtualenv.pypa.io/en/latest/]
3,创建一个文件夹叫simpleblog
1 |
mkdir simpleblog |
4,创建虚拟环境myenv
1 |
python3 -m venv myvenv |
5,激活虚拟环境
1 |
source myvenv/bin/activate |
如果看到下面这个提示,说明成功进入了虚拟环境:(myvenv) ~/simpleblog$
这时候可以使用python来代替python3了。
6,在虚拟环境中安装django1.9
(myvenv) ~$ pip install django==1.9.5 |
OK,到此为止,django环境已经搞定了。
生成项目骨架
我们将要创建一个简单的博客。接下来一步是生成项目骨架,Django为我们提供了很多有用的脚本让我们可以很方便的使用简单的命令即可生成基本的目录和文件。
对于生产的文件和目录名称请不要随意去修改,也不要随意去移动文件的位置,因为这些都是约定好的。Django会根据特定的结构去查找对应的文件。
注意:记住在虚拟环境中运行的一切。如果您没有看到您的控制台中的前缀 (myvenv),您需要激活您的虚拟环境。 我们在 Django 安装这一节内的 在虚拟环境下工作 部分中解释过了。 在windows下面运行命令:myvenv\Scripts\activate
,在苹果或linnux环境下运行命令:source myvenv/bin/activate
假设你已经在刚刚的simpleblog目录中了,那么执行下面的命令:
(myvenv) [mango@centos00 simpleblog]$ django-admin.py startproject mysite |
会自动在simpleblog目录中生成一个mysite目录,进入mysite目录,会是下面的结构:
myste |
manage.py
是管理网站的脚本,可以使用它来启动一个简单的web服务器,这个对于开发调试非常有用。setting.py
是工程的核心配置文件。urls.py
是路径配置文件,可以配置URL到实际Controller的映射关系。
修改默认配置
我们可以试着去修改下setting.py
配置文件中的时区配置,改为你所在的地区的时区。 关于时区可以参考:http://en.wikipedia.org/wiki/List_of_tz_database_time_zones 因为我现在在中国大陆地区,所以把它改成了这样:
LANGUAGE_CODE = 'zh-cn' |
配置数据库
目前使用默认的sqlite3即可,最简单,什么依赖都没有。
1 |
DATABASES = { |
为我们的博客系统生成数据库,我们需要运行下面的命令:
(myvenv) [mango@centos00 mysite]$ python manage.py migrate |
出现如下的信息表示成功了:
Operations to perform: |
运行服务器
接下来我们通过manage.py来运行服务器
(myvenv) [mango@centos mysite]$ python manage.py runserver 192.168.203.95:8000 |
然后在浏览器中打开这个地址:http://192.168.203.95:8000/
按CTRL+C可以停止服务器
如果你看到下面这个页面,那么恭喜你,成功入门。
Django开发博客 入门篇的更多相关文章
- django开发博客(1) 入门
现在正式开始博客开发 1.安装django1.4 如果你使用的是fedoraDVD版,安装时选择了web开发组建,这一步可以省略,因为它自带django环境 django下载地址 https://ww ...
- 纯django开发博客系统
企业级教程:纯django开发博客系统 1.视频教程 https://www.duanshuilu.com/ 2.教程文档 https://www.duanshuilu.com/ 0.课程简介1.简价 ...
- 使用django开发博客过程记录3——博客侧栏实现
说起这个侧栏真是苦恼我很长时间,一开始以为和之前的一样传递额外参数就可以了就像下面这样: class IndexView(ListView): template_name = 'apps/index. ...
- Django开发博客- 三部曲
其实在django中实现一个功能只需要三个步骤即可,这里我姑且叫它三部曲. 这三部曲就是: 定义urls映射 定义views 定义templates 什么是URL? URL就算一个WEB地址,你在浏览 ...
- 使用django开发博客过程记录4——Category分类视图
在写点击博客的所属分类,显示所有该分类的文章时真是让我想了好一会,为什么呢?因为我使用的是cbv模式开发的而不是简单的视图处理逻辑的,所以,有些操作会被包装好了,你并不知道它的细节,那么我们今天要实现 ...
- Django开发博客- 模型
django的模型就是用于在数据库中存储的某种类型的对象.在我们的博客系统中, 发表的文章就是一个模型,需要存储在数据库中. 这里我们使用django默认的sqlite3库,对于我们的这个小系统而言已 ...
- 使用django开发博客过程记录5——日期归档和视图重写
针对每条博客的观看次数我么是使用django的Mixin实现的: def get(self, request, *args, **kwargs): last_visit = request.sessi ...
- 使用django开发博客过程记录2——博客首页及博客详情的实现
1.什么是CBV(Class-based views) 2.博客首页及博客详情实现 1.什么是CBV 什么是CBV?说白了就是以前是视图为处理请求返回响应的函数,有了cbv之后我们就可以用类处理请求和 ...
- Django开发博客- 部署
安装Git Git是一个被大量程序员使用的”版本控制系统”.此软件可以跟踪任何时间文件的改变,这样你以后可以随时召回某个特定版本. windows系统下面可以下载git-scm安装.除了第5步”Adj ...
随机推荐
- IOS Bug分析
异常代码是SIGABRT.通常, SIGABRT 异常是由于某个对象接收到未实现的消息引起的. 或者,用简单的话说,在某个对象上调用了不存在的方法. iOS应用崩溃日志分析 分析iOS Crash文 ...
- outlook经常无故崩溃解决办法
问题描述: Outlook 最近有点怪,有时无法启动有时又突然崩溃.原以为是远程访问服务出了问题,但即使在本地操作,Outlook 仍然极不稳定.怎么回事? 原因:这种现象,很可能是由 Office ...
- CodeForces 152C Pocket Book
Time Limit:2000MS Memory Limit:262144KB 64bit IO Format:%I64d & %I64u Submit Status Prac ...
- include_path详细解析
include_path详细解析 原文地址:http://www.laruence.com/2010/05/04/1450.html 1.php默认的包含路径为 .;C:\php\pear 即 ...
- 图片格式转换之ImageMagick
项目中需要实现一些图片文件到TIFF文件的转换,去网上下载了一些第三方软件. 好的软件需要收费,免费的存在各种问题. 自己动手,丰衣足食! 众里寻他千百度,蓦然回首,那人就是ImageMagick. ...
- 面向对象--类库、委托、is和as运算符、泛型集合
类库: 其实就是一堆类文件,只是看不到这些类的源代码,保密性好. 优点:保密性好 缺点:如果这个方法不好用,使用者无法自己去更改它. 给的大多是dll文件.使用方法:引用右键,添加引用,浏览,选择到相 ...
- js跨域及解决方案
本文出自:http://www.cnblogs.com/oneword/archive/2012/12/03/2799443.html 1.什么是跨域 我们经常会在页面上使用ajax请求访问其他服务器 ...
- [HDOJ3911]Black And White(线段树,区间合并)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3911 题意:一个01串,两种操作: 0 a b:查询[a,b]内连续1的最长长度. 1 a b:翻转[ ...
- 51nod 1413 权势二进制 背包dp
1413 权势二进制 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 一个十进制整数被叫做权势二进制,当他的十进制表示的时候只由0或1组成.例如0,1,101, ...
- lotusscript基本语法
LotusScript是一种使用于Lotus Notes客户端程序或者是用于Domino服务器程序代理列表中的脚本语言.相当于用于网页中的脚本语言JavaScript.(JavaScript以可以用于 ...