Differences between revisions 32 and 71 (spanning 39 versions)
Revision 32 as of 2005-08-16 08:59:43
Size: 3684
Editor: ZoomQuiet
Comment:
Revision 71 as of 2009-12-25 07:18:32
Size: 4385
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
http://media.djangoproject.com/img/site/hdr_logo.gif
::-- ZoomQuiet [[[DateTime(2005-07-16T07:18:42Z)]]]
{{http://media.djangoproject.com/img/site/hdr_logo.gif}} ::-- ZoomQuiet [<<DateTime(2005-07-16T07:18:42Z)>>]
Line 5: Line 4:
[[TableOfContents]] <<TableOfContents>>
Line 7: Line 7:
 [http://www.djangoproject.com Django] 是一个高级 Python web framework,它鼓励快速开发和干净的、MVC设计。它包括一个模板系统,对象相关的映射和用于动态创建管理界面的框架。Django遵守[http://code.djangoproject.com/file/django/trunk/LICENSE BSD版权]。  . [[http://www.djangoproject.com|Django]] 是一个高级 Python web framework,它鼓励快速开发和干净的、MVC设计。它包括一个模板系统,对象相关的映射和用于动态创建管理界面的框架。Django遵守[[http://code.djangoproject.com/file/django/trunk/LICENSE|BSD版权]]
Line 9: Line 9:
Django 的名字是从一位比利时爵士音乐家来的。这是从 Django 的 [http://www.djangoproject.com/documentation/faq/ FAQ] 中看到的。这位音乐家名叫: [http://en.wikipedia.org/wiki/Django_Reinhardt Django Reinhardt] ,他是一个吉普赛人,主要以演奏吉它为主,还演奏过小提琴等。在1930年到1950年初的这段日子里,他被认为是最好的吉它演奏家。根据百科全书的说明,django的发音为: zhane-go ('a'发长音)。从[http://en.wikipedia.org/wiki/Django_Reinhardt 百科全书]可以看到在他18岁的时候,他的手指在一场大火中受伤,但这并未影响他的演奏生涯。 Django 的名字是从一位比利时爵士音乐家来的。这是从 Django 的 [[http://www.djangoproject.com/documentation/faq/|FAQ]] 中看到的。这位音乐家名叫: [[http://en.wikipedia.org/wiki/Django_Reinhardt|Django Reinhardt]] ,他是一个吉普赛人,主要以演奏吉它为主,还演奏过小提琴等。在1930年到1950年初的这段日子里,他被认为是最好的吉它演奏家。根据百科全书的说明,django的发音为: zhane-go ('a'发长音)。从[[http://en.wikipedia.org/wiki/Django_Reinhardt|百科全书]]可以看到在他18岁的时候,他的手指在一场大火中受伤,但这并未影响他的演奏生涯。
Line 12: Line 13:
  完全在Python中定义你的数据模型。你可以免费得到一个丰富的,动态访问数据库的API--但如果需要你仍然可以写SQL语句。
  . 完全在Python中定义你的数据模型。你可以免费得到一个丰富的,动态访问数据库的API--但如果需要你仍然可以写SQL语句。
Line 15: Line 15:
  URL的设计漂亮,cruft-free,没有框架的特定限定。象你喜欢的一样灵活。
  . URL的设计漂亮,cruft-free,没有框架的特定限定。象你喜欢的一样灵活。
Line 18: Line 17:
  使用DjanGo强大而可扩展的模板语言来分隔设计、内容和Python代码。
  . 使用DjanGo强大而可扩展的模板语言来分隔设计、内容和Python代码。
Line 21: Line 19:
  可以挂在内存缓冲或其它的框架实现超级缓冲 -- 实现你所需要的粒度。
  . 可以挂在内存缓冲或其它的框架实现超级缓冲 -- 实现你所需要的粒度。
Line 24: Line 21:
  不需要你花大量的工作来创建人员管理和更新内容的接界。DjanGo可以自动完成。
  . 不需要你花大量的工作来创建人员管理和更新内容的接界。DjanGo可以自动完成。
Line 27: Line 23:
  已经支持Postgresql, MySql, Sqlite3
  . 已经支持Postgresql, MySql, [[http://www.sqlite.org/|Sqlite3]], Oracle, ado_mssql
 * 国际化
  . 完全支持多国语言,允许针对应用程序提供特定国家语言的翻译字符
Line 31: Line 28:
 * [wiki:self/DjangoOverview 概述](原文)
 * [wiki:self/DjangoInstall 安装](译文)
 * [wiki:self/DjangoTut01 教程一 - 编写你的第一个DjanGo应用 (第一部分)](原文)
 * [wiki:self/DjangoTut02 教程二 - 编写你的第一个DjanGo应用 (第二部分)](原文)
 * [wiki:self/DjangoTut03 教程三 - 编写你的第一个DjanGo应用 (第三部分)](原文)
 * [wiki:self/DjangoFaq FAQ](原文)
 * [wiki:self/DjangoRequest Django是如何处理请求的] -- [wiki:PyCNmail/2005-August/014451.html 我翻译的小文:《Django是如何处理请求的》]
 * [[http://www.djangoproject.com/documentation/|官方文档]]
 * [[self:DjangoInstall|安装]](译文)
 * self:RemovingTheMagic (译文)
 * [[http://www.woodpecker.org.cn/obp/django/django-faq/TableOfContents.html|Django 文档中文版]] (翻译中)
Line 39: Line 33:
 * [wiki:self/DjangoSetup Windows平台下的运行环境配置](张骏)
 * [wiki:self/DjangoInDebian Debian/Testing平台下的运行环境配置](Wang Kebo)
 * [[self:DjangoSetup|Windows平台下的运行环境配置]](张骏)
 * [[self:DjangoInDebian|Debian/Testing平台下的运行环境配置]](Wang Kebo)
 * [[self:DjangoStepByStepNew|DjangoStpeByStep 0.92版]]([[limodou]])
 * [[self:zhwang/UbuntuDjango|Ubuntu 6.06 LTS平台下Django开发环境的搭建]](zhwang)
== 翻译文档 ==
 * [[DjangoAuth-ZH|在Django 中的用户认证]] -- 马踏飞燕
 * [[http://www.moyuer.cn/blog/index.php/archives/category/note/python/page/20|DjangoBook中文翻译( ing )]] -- 肯定来过
 * [[http://www.javaeye.com/subject/Django-book|JavaEye社区的DjangoBook翻译(全)]]
Line 43: Line 42:
 * [http://www.dobbes.com/media/pdfs/django_reference_sheet.pdf 这里]是一个有心人将 DjanGo 相关的东西作成了一个PDF文件可以方便查阅。
 * 你可以访问[http://www.djangoproject.com/weblog/ Weblog]来了解最新的变化,也可以订阅它。
 * [[http://www.dobbes.com/media/pdfs/django_reference_sheet.pdf|这里]]是一个有心人将 DjanGo 相关的东西作成了一个PDF文件可以方便查阅。
 * 你可以访问[[http://www.djangoproject.com/weblog/|Weblog]]来了解最新的变化,也可以订阅它。
Line 47: Line 45:
 * 正式包(Coming soon...)
 * 使用svn 
   {{{svn co http://code.djangoproject.com/svn/django/trunk/ django_src}}}
 * 正式包(最新版 0.96)[[http://www.djangoproject.com/download/0.96/tarball/|下载]]
 * 使用svn
  . {{{svn co http://code.djangoproject.com/svn/django/trunk/ django_src}}}
 * DjanGo 官方的 [[http://www.djangoproject.com/download/|How to get Django]]
Line 51: Line 50:
 * 2005-07-12 ["limodou"] 发现 [wiki:PyCNmail/2005-July/012745.html 尚未发布的Python web framework -- Django]  * 2005-07-12 [[limodou]] 发现 [[PyCNmail:2005-July/012745.html|尚未发布的Python web framework -- Django]]
Line 53: Line 52:
 * 2005-07-16 张骏发表心得 [wiki:DjangoFirstTouch django初体验]
 * 2005-07-16 ["limodou"] 发现的 [http://www.exit66.com/?q=node/52 Getting Started With Django]
 * 2005-07-20 Wang Kebo发表心得 [wiki:self/DjangoInDebian 在Debian/Testing上安装运行Django]
 * 2005-07-16 张骏发表心得 [[DjangoFirstTouch|django初体验]]
 * 2005-07-16 [[limodou]] 发现的 [[http://www.exit66.com/?q=node/52|Getting Started With Django]]
 * 2005-07-20 Wang Kebo发表心得 [[self:DjangoInDebian|在Debian/Testing上安装运行Django]]
== 笔记汇编 ==
||<^> <<MonthCalendar>>||<^>'''07汇聚'''<<Include(^DjanGo/2007-.*,'汇聚简报',4,sort=descending,items=30,titlesonly)>>||
= Django Powered Sites =
 * http://www.flyaflya.com
Line 59: Line 61:
<<Include(/feeling)>>
<<Include(/dicuss)>>
-- ZoomQuiet

http://media.djangoproject.com/img/site/hdr_logo.gif ::-- ZoomQuiet [2005-07-16 07:18:42]

介绍

  • Django 是一个高级 Python web framework,它鼓励快速开发和干净的、MVC设计。它包括一个模板系统,对象相关的映射和用于动态创建管理界面的框架。Django遵守BSD版权

名字由来

Django 的名字是从一位比利时爵士音乐家来的。这是从 Django 的 FAQ 中看到的。这位音乐家名叫: Django Reinhardt ,他是一个吉普赛人,主要以演奏吉它为主,还演奏过小提琴等。在1930年到1950年初的这段日子里,他被认为是最好的吉它演奏家。根据百科全书的说明,django的发音为: zhane-go ('a'发长音)。从百科全书可以看到在他18岁的时候,他的手指在一场大火中受伤,但这并未影响他的演奏生涯。

特性介绍

  • 对象相关的映射
    • 完全在Python中定义你的数据模型。你可以免费得到一个丰富的,动态访问数据库的API--但如果需要你仍然可以写SQL语句。
  • URL 分发
    • URL的设计漂亮,cruft-free,没有框架的特定限定。象你喜欢的一样灵活。
  • 模版系统
    • 使用DjanGo强大而可扩展的模板语言来分隔设计、内容和Python代码。

  • Cache系统
    • 可以挂在内存缓冲或其它的框架实现超级缓冲 -- 实现你所需要的粒度。
  • 自动化的管理界面
    • 不需要你花大量的工作来创建人员管理和更新内容的接界。DjanGo可以自动完成。

  • 支持多种数据库
  • 国际化
    • 完全支持多国语言,允许针对应用程序提供特定国家语言的翻译字符

文档

官方文档

原创文档

翻译文档

参考资料

  • 这里是一个有心人将 DjanGo 相关的东西作成了一个PDF文件可以方便查阅。

  • 你可以访问Weblog来了解最新的变化,也可以订阅它。

下载

  • 正式包(最新版 0.96)下载

  • 使用svn
    • svn co http://code.djangoproject.com/svn/django/trunk/ django_src

  • DjanGo 官方的 How to get Django

学习记录

笔记汇编

<< <  2025 / 9 >  >>
Mon Tue Wed Thu Fri Sat Sun
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

07汇聚

Django Powered Sites

反馈

大家的学习体验?

  • AlbertLee: 从 Rails on Ruby 那里体会了这种MVC的 Web开发的方式,看到 DjanGo 说是 "Rails on Python" ,所以很有兴趣。现在的疑虑就是能否应用到实际的企业级产品中?

今天用了一下午加一晚上时间把那四篇tut全看了一遍,并实际跟着作了一遍,有些感觉了。但是最后第四篇教程,最后讲到的那个 Generic Views,说得很莫名其妙,是作者写到最后写烦了还是我看到最后看烦了? 总之是没有弄明白。

  • Fat: tut4中关于Generic Views确实说得不清楚。用了一下感觉还是不错的。其实就是让用户无需自己写view而实现一些rad方面的功能,django自称(crud,create update delete)。很适合快速开发。不过目前的版本在实现上好像还是有点小问题。至少我在使用中发现类似日期字段的filter在generic views下不太好用(创建好用,update时显示用问题)。

running under Ubuntu

with Twisted

vcc.django的第一次亲密接触

vcc <[email protected]>                hide details    12:11 am (47 minutes ago) 
        reply-to                [email protected]   
        to              [email protected]   
        date            Jan 17, 2007 12:11 AM    
        subject         [python-chinese] django的第一次亲密接触  

昨天要给一个客户做一个小东西,厌倦了PHP,就决定用django试试看,虽然对django也就仅限于知道,大致浏览了一下它的网站;)反正是个小东西,费不了多少时间,估计就几个小时就搞定,结果昨晚搞了大半夜加上今天搞了半天,才算搞定。第一次嘛,怎么样也得纪念一些,放着备忘啊。

1、django不是为了省事的,什么都要你定义,但是定义好了就挺省事,先苦后甜啊

2、我用的Mysql不是utf-8编码,所以一上来就在settings定义DEFAULT_CHARSET = 'gb2312', 这我是用utf-8搜索django代码发现有DEFAULT_CHARSET,试一下,果然搞定。

3、Mysql的datetime允许0000-00-00, 这个django搞不定,这个痛苦,被迫改啊。

4、django的allow_empty缺省是False,这个没注意(想当然认为不会有这种问题),结果给客户时是没测试数据的,当场over,这下丢脸了;-)

5、@login_required的用法,在limodou的step by step里认为不好用,没有默认的login的模版。其实很好用,只是要把django带的template(django\contrib\admin\templates) copy到你的template里,改一下就好了。我想django认为普通客户的登陆和管理员的登陆是不一样的,所以不提供缺省的模版。(limodou真是一个好同志,我就是拿着他的step干的,赞一个!)

6、没有多数据库支持,其他数据只好直接用MysqlDb了,没办法享用django的ORM的好处。

7、直接用数据库的查询的结果怎么传给模版?可以用dictfetchall:

from django.db import connection
from django.db.backends import util
 
cursor = connection.cursor()
cursor.execute("""SELECT * FROM ....""", [....])
data = util.dictfetchall(cursor)
return render_to_response('template.html', {'data':data})

8、template的不能有表达式,我相当然的用if a=b,结果不行,要用ifequal。想想django默认的allow_empty都是False,要大家再努力记多一些规矩也就不奇怪了;-)

9、django的出错后的信息不完全,有很多都没有有效的信息,例如没有行号(我不需要django的core的行号,拜托给我的破代码的行号好不好),有的只能靠猜,这个真的很麻烦。可能不关django的事,python的问题?

10、django的cursor的execute的参数如果用%d就会出错,可是我传过去的确实是int啊,后来我搜了一把代码,似乎没看到用%d,都是%s,改成%s就OK了,这大概不会又是我的想当然了吧?

感觉django确实不是给初学者玩的,想想url要定义regexp就知道了,但是痛苦了一番还是感觉django不错,写起来比PHP舒服,熟悉了以后效率明显比PHP高,看来我以后可以换用django了。

ps.Django电影

http://sub.hanstyle.org/poster/Sweet.And.Lowdown.jpg 甜美与卑微 Sweet and Lowdown

发行时间:1999年
电影导演:伍迪·艾伦 Woody Allen
电影演员:伍迪·艾伦 Woody Allen
     乌玛·瑟曼 Uma Thurman
     西恩·潘 Sean Penn
     约翰·沃特斯 John Waters
-- ZoomQuiet

DjanGo (last edited 2009-12-25 07:18:32 by localhost)