Tony CHEN |
2.0/chapter04/#325 |
2009-10-30 12:02:44
|
例如:
|
|
Tony CHEN |
2.0/chapter04/#320 |
2009-10-30 12:02:21
|
提示:你也可以在自定义的对象里定义他们的布尔值属性(这个是python的高级用法)。
|
|
Tony CHEN |
2.0/chapter04/#275 |
2009-10-30 11:59:47
|
例如:
|
|
Tony CHEN |
2.0/chapter04/#270 |
2009-10-30 11:59:33
|
它将静静地错误退出。
|
|
Tony CHEN |
2.0/chapter04/#269 |
2009-10-30 11:57:42
|
接上面的例子,如果模板文件里包含了 <literal>{{ account.delete }}</literal> ,对象又具有 <literal>delete()</literal>方法,而且<literal>delete()</literal> 有<literal>alters_data=True</literal>这个属性,那么在模板载入时, <literal>delete()</literal>方法将不会被执行。
|
|
Tony CHEN |
2.0/chapter04/#263 |
2009-10-30 11:53:03
|
如果某个模板中包含了向 <literal>{{ account.delete }}</literal>这样的标签,其中<literal> account</literal> 又是<literal>BankAccount</literal> 的一个实例,请注意在这个模板载入时,account对象将被删除。
|
|
Tony CHEN |
2.0/chapter04/#263 |
2009-10-30 11:52:12
|
如果某个模板中包含了向 <literal>{{ account.delete }}</literal>这样的标签,其中account又是<literal>BankAccount</literal> 的一个实例,请注意在这个模板载入时,account对象将被删除。
|
|
Tony CHEN |
2.0/chapter04/#208 |
2009-10-30 11:48:40
|
这个例子使用了一个自定义的类,演示了通过实例变量加一点(dots)来访问它的属性,这个方法适用于任意的对象。
|
|
Tony CHEN |
2.0/chapter04/#163 |
2009-10-30 11:43:49
|
在这里,我们指定参数 <literal>person_name</literal> 的值是 <literal>'John Smith'</literal> , 参数company 的值为 'Outdoor
Equipment' ,等等。
|
|
Tony CHEN |
2.0/chapter04/#162 |
2009-10-30 11:41:05
|
然后,我们创建一个 <literal>Context</literal> 对象, <literal>c</literal> 。 <literal>Context</literal> 构造的参数是Python 字典数据类型。
|
|
Tony CHEN |
2.0/chapter04/#139 |
2009-10-30 11:36:21
|
如果不明白你从中获益了什么,别担心。你只需要知道Django对Unicode的支持,将让你的应用程序轻松地处理各式各样的字符集,而不仅仅是基本的A-Z英文字符。
|
|
Tony CHEN |
2.0/chapter04/#182 |
2009-10-30 11:31:26
|
例如:
|
|
Tony CHEN |
2.0/chapter04/#138 |
2009-10-30 11:31:03
|
如果你明白这样做给你带来了多大便利的话,尽可能地感激Django在幕后有条不紊地为你所做这这么多工作吧。
|
|
Tony CHEN |
2.0/chapter04/#108 |
2009-10-30 11:26:34
|
这里,块标签(block tag)指向的是<literal> {% notatag %}</literal>,块标签与模板标签是同义的。
|
|
Tony CHEN |
2.0/chapter04/#92 |
2009-10-30 11:20:32
|
在当前的这些示例中,我们鼓励你使用<literal> python manage.py
shell</literal>这个方法,这样可以免去你大费周章地去配置那些你不熟悉的环境变量。
|
|
Tony CHEN |
2.0/chapter04/#94 |
2009-10-30 11:17:16
|
随着你越来越熟悉Django,你可能会偏向于废弃使用<literal> manage.py shell</literal>
,而是在你的配置文件<literal>.bash_profile</literal>中手动添加 <literal>DJANGO_SETTINGS_MODULE</literal>这个环境变量。
|
|
Tony CHEN |
2.0/chapter04/#92 |
2009-10-30 11:11:33
|
我们鼓励你在实践这些示例中使用<1>python manage.py shell<2>这种方法,因为这样可以免去你大费周折地亲自去配置环境变量。
|
|
Tony CHEN |
2.0/chapter04/#92 |
2009-10-30 11:11:28
|
我们鼓励你在实践这些示例中使用<1>python manage.py shell<2>这种方法,因为这样可以免去你大费周折地亲自去配置环境变量。
|
|
|
2.0/chapter02/#125 |
2009-10-29 20:33:16
|
最后,如果你使用trunk,你要知道使用的是哪个trunk版本
|
|
|
2.0/chapter02/#112 |
2009-10-29 20:32:21
|
此目录包含管理工具,例如:django-admin.py
|
|
|
2.0/chapter02/#108 |
2009-10-29 20:31:51
|
利润,此文件包含如下行:
|
|
|
2.0/chapter02/#107 |
2009-10-29 20:31:25
|
django.pth,编辑这个文件,包含djtrunk目录的全路径
|
|
|
2.0/chapter02/#105 |
2009-10-29 20:30:27
|
在site-packages目录下,创建一个文件
|
|
|
2.0/chapter02/#103 |
2009-10-29 20:29:54
|
上面的结果会包含site-packages的目录
|
|
|
2.0/chapter02/#100 |
2009-10-29 20:28:38
|
一般为/usr/lib/python2.4/site-packages,如果你不确定,可以输入如下命令:
|
|
|
2.0/chapter02/#99 |
2009-10-29 20:27:50
|
找到你的python的site-packages目录
|
|
|
2.0/chapter02/#87 |
2009-10-29 20:26:41
|
因为很多django的开发者在正式网站上就是用的trunk版本,他们会保证trunk版本的稳定行。
|
|
|
2.0/chapter02/#86 |
2009-10-29 20:24:31
|
请记住,即使是使用trunk版本,也是有保障的。
|
|
IIssNan
|
2.0/chapter05/#665 |
2009-10-29 17:31:53
|
当然,通常我们需要同时进行过滤和排序查询的操作。
|
|
|
2.0/chapter19/#7 |
2009-10-29 17:31:46
|
由于大量开发者对本章内容比较困惑,所以我们将详细介绍。
|
|
IIssNan
|
2.0/chapter05/#664 |
2009-10-29 17:30:25
|
我们已经知道如何对数据进行过滤和排序。
|
|
IIssNan
|
2.0/chapter05/#662 |
2009-10-29 17:29:09
|
连锁查询
|
|
IIssNan
|
2.0/chapter05/#616 |
2009-10-29 17:23:49
|
上面的例子中<literal> filter()</literal> 函数返回一个记录集,这个记录集是一个列表。
|
|
IIssNan
|
2.0/chapter05/#618 |
2009-10-29 17:23:24
|
<literal> get()</literal> 方法就是在此时使用的:
|
|
IIssNan
|
2.0/chapter05/#616 |
2009-10-29 17:23:07
|
上面的例子中filter()函数返回一个记录集,这个记录集是一个列表。
|
|
IIssNan
|
2.0/chapter05/#618 |
2009-10-29 17:21:45
|
get()方法就是在此时使用的:
|
|
IIssNan
|
2.0/chapter05/#617 |
2009-10-29 17:21:07
|
相对列表来说,有些时候我们更需要获取单个的对象,
|
|
IIssNan
|
2.0/chapter05/#605 |
2009-10-29 17:19:06
|
包含性查找可以使用:
|
|
IIssNan
|
2.0/chapter05/#604 |
2009-10-29 17:18:18
|
注意,SQL缺省的 <literal>=</literal> 操作符是精确匹配的,
|
|
IIssNan
|
2.0/chapter05/#601 |
2009-10-29 17:16:46
|
因此上面的代码可以转化成这样:
|
|
IIssNan
|
2.0/chapter05/#600 |
2009-10-29 17:16:05
|
多个参数会被转换成 <literal>AND</literal> SQL语句,
|
|
IIssNan
|
2.0/chapter05/#589 |
2009-10-29 17:15:30
|
我们很少会一次性从数据库中取出所有的数据;通常都只针对一部分数据进行操作。
|
|
IIssNan
|
2.0/chapter05/#590 |
2009-10-29 17:11:18
|
在Django API中,我们可以使用<literal> filter()</literal> 方法对数据进行过滤:
|
|
IIssNan
|
2.0/chapter05/#576 |
2009-10-29 17:10:16
|
目前,我们只需了解管理器管理着所有针对数据包含、还有最重要的数据查询的表格级操作。
|
|
IIssNan
|
2.0/chapter05/#575 |
2009-10-29 17:07:24
|
它被称为管理器,我们将在第10章中详细讨论它。
|
|
IIssNan
|
2.0/chapter05/#554 |
2009-10-29 17:05:41
|
我们已经知道如何从一个给定的模型中取出所有记录:
|
|
IIssNan
|
2.0/chapter05/#546 |
2009-10-29 17:03:11
|
注意,并不是只修改来期望的那个字段,所有的字段都会被更新。
|
|
IIssNan
|
2.0/chapter05/#547 |
2009-10-29 17:01:57
|
这个操作有可能引起竞态条件,取决于你的应用程序。
|
|
IIssNan
|
2.0/chapter05/#530 |
2009-10-29 16:59:34
|
在调用<literal> save()</literal> 方法之前,记录并没有保存至数据库,像这样:
|
|
IIssNan
|
2.0/chapter05/#501 |
2009-10-29 16:57:53
|
??????
|
|