编程是一门艺术

Creative Commons License
本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。
raptor.zh(at)gmail.com

archives 存档

01 Jan - 31 Dec 2012
01 Jan - 31 Dec 2011
01 Jan - 31 Dec 2010
01 Jan - 31 Dec 2009
01 Jan - 31 Dec 2008
01 Jan - 31 Dec 2007
01 Jan - 31 Dec 2006
01 Jan - 31 Dec 2005
01 Jan - 31 Dec 2004
01 Jan - 31 Dec 2003
01 Jan - 31 Dec 2002
01 Jan - 31 Dec 2001
01 Jan - 31 Dec 2000
01 Jan - 31 Dec 1999

--

links 链接

--

Django学习笔记(二)

二、开发篇(一)

参考官方教程一这个说明。在工作文件夹中运行(试过所谓的PYTHONPATH,但在Windows上似乎无效,只好用全路径了):

python ...\django\bin\django-admin.py startproject [yourproject]

即可创建一个叫[yourproject](将所有的[yourproject]换成你的项目名)的文件夹,其中包含基本的项目文件。修改其中的settings.py,把相应的数据库信息填好(当然,必须先创建一个空的数据库)后,再运行:

python ...\django\bin\django-admin.py init --settings=[yourproject].settings

初始化yourproject,只要前面配置没问题,就可以成功创建一个项目了(在当前工作文件夹下创建相应的子文件夹)。

因为后面的操作中也需要这个参数--settings=[yourproject].settings,故建议设置一个环境变量(似乎使用这个环境变量需要将工作文件夹——不是项目文件夹——加入PYTHONPATH环境变量):

set DJANGO_SETTINGS_MODULE=[yourproject].settings

建好项目就可以开始写应用了,以官方教程中的polls为例说明。首先是创建一个polls app,在[yourprojects]\apps文件夹中运行(假设已经设置了上述环境变量):

python ...\django\bin\django-admin.py startapp polls

之后便会以apps下生成polls子文件夹等,编辑polls\models\polls.py文件如下(我就不分步了,直接用了教程一完成的完整代码):

from django.core import meta

class Poll(meta.Model):
question = meta.CharField(maxlength=200)
pub_date = meta.DateTimeField('date published')

def __repr__(self):
return self.question

def was_published_today(self):
return self.pub_date.date() == datetime.date.today()

class Choice(meta.Model):
poll = meta.ForeignKey(Poll)
choice = meta.CharField(maxlength=200)
votes = meta.IntegerField()

def __repr__(self):
return self.choice

这里定义了应用程序的数据结构(类数据成员),然后修改settings.py:

INSTALLED_APPS = (
'[yourproject].apps.polls',
)

然后生成数据库结构(其它相关的语句说明见官方教程):

python ...\django\bin\django-admin.py install polls

至此,完成数据库的建立,接下来请自行按照教程一中的内容尝试通过Python的交互功能使用Django的ORM输入测试数据(这些数据在教程二中有用到)。

Trackback link:

Please enable javascript to generate a trackback url

No trackbacks

评论(0)


 
   
 
  表情图标 

 


提示: 除了 <b> 和 <i> 之外,其他的Html标签都将从您的评论中去除.url或mail地址会被自动加上链接.