Django系列教程:一、Django的安装和入门
注明:python版本为3.3.1、Django版本为1.5.1,操作系统为Windows7,其他版本有一些不同的地方读者可以自行探讨。
安装
第一步:下载python3.3.1和Django1.5.1并安装,下载地址如下:
python3.3.1:http://www.python.org/download/
python的安装大家请自行百度。
Django1.5.1:http://www.djangoproject.com/download/
将下载后的Django-1.5.1.tar.gz解压到一个文件夹,打开cmd命令提示符,使用cd命令进入到解压后的文件夹中,再按照安装界面输入命令即可。
python setup.py install
linux系统安装需要使用root权限,可以用sudo命令,如下:
sudo python setup.py install
以上步骤安装好以后再进行第二步。
第二步:将django-admin.py这个文件所在的目录加入到计算机的系统变量Path中去。
一般为:D:\Program Files\Python33\Scripts
第三步:验证Django是否安装成功
打开python IDLE
输入:
>>> import django >>> django.VERSION
显示: (1, 5, 1, 'final', 0) 则安装成功。
入门:
首先新建一个文件夹,如我新建的文件夹目录为:D:\djcode,打开cmd命令提示符窗口,用cd命令进入到djcode文件夹,使用下面的命令创建一个工程。
django-admin.py startproject firstsite
注意:我的python和django-admin都是加入过系统变量的可以这么写,如果没有加入的话还是使用python IDLE比较好。
这样你就成功创建了一个名为“firstsite”的工程。可以看到其目录结构如下。
D:\DJCODE\FIRSTSITE
│ manage.py
│
└─firstsite
settings.py
urls.py
wsgi.py
__init__.py
firstsite文件夹里面有manage.py文件和firstsite这个文件夹,firstsite这个文件夹里面又含有四个文件,读者可以自行打开看看,以后会慢慢讲解。
完成工程创建后就是启动web服务,进入到manage.py的同一级目录,使用下面的命令:
python manage.py runserver 8080
后面的8080如果不写的话默认是8000,。
打开浏览器,输入:http://127.0.0.1:8080访问,出现下图则表示安装成功。
好了,今天就到这。下一章将教大家写一个HelloWorld的页面,因为版本的问题,以前DjangoBook中这一个页面出现了很多问题,到时候会专门提出来。
本人既是python的初学者也是Django的初学者,写这一系列教程的目的就是为了加深自己的理解,希望大家多多包涵和指教,有什么问题请留言,谢谢。
自己动手,做个支持版本管理的备份软件
数据备份是个老话题,几个大公司也都有成熟的文件备份软件。可是偏遇到地球经济危机,公司财政吃紧,连备份软件都买不起。
以前都是在网上找一些免费的备份软件,说是备份,其实就是文件Copy,每次要么把上一次的全部覆盖,无法回溯。要么每次生成一个完整的备份包,呵呵,话说回来,哪有那么大的空间来存储这些个备份包呀。
这一段时间比较充裕,就想自己做一个有版本管理功能的备份系统,也给自己偷懒创造一些机会。
首先考虑的是微软的Microsoft Sync Framework,经过两天的Msdn,Google,baidu乃至Bing,最终觉得文档太少,难以把握,不得已放弃了,决定自己重新发明轮子。
备份一个文件夹的内容,主要经过以下流程:
1、遍历文件夹的内容,生成新的版本
2、然后与上次备份的内容进行对比,决定需要进行备份的都有那些文件。
3、备份新文件,备份文件时要与已经备份的文件进行比对,如果文件已经存在,则只在版本文件中存储一个链接。避免重复存储。
当然,核心的操作,其实还是Copy,我觉的核心的代码只占系统的0.1%,剩余的99.9%都在为它服务。
不说废话了,虽然软件不大,可也废了我不少心血,只是自己使用就太浪费了,现在拿来共享,现在是软件的第一个版本,希望对大家也有一点使用价值。
软件默认不备份隐藏的文件夹和文件,只要文件不算太多,速度还比较快。我试过几个G的文件夹,速度可以接受,但是放到一个网站服务器上,76G的文件,检查和备份的时间就让我受不了了。所以要是你有太多的文件要备份,不妨分成多个备份计划,分头进行。
下载地址:后卫(full-back)文件备份系统
欢迎大家提出意见建议,将不胜感谢。