helloppx
|
2.0/chapter03/#183 |
2010-03-07 18:35:08
|
<literal></literal> |
|
helloppx
|
2.0/chapter15/#206 |
2010-03-04 19:57:20
|
他是很容易使用的:
|
|
helloppx
|
2.0/chapter12/#15 |
2010-03-03 20:36:20
|
但是,在开始前,有一些<emphasis></emphasis> |
essential things
|
|
2.0/chapter19/#589 |
2010-02-27 21:40:21
|
<reference name="final chapter" refuri="../chapter20/">未章</reference> 将关注于安全,如何帮助你的用户和网站远离恶意软件的攻击dd。
|
|
xiang544@163.com
|
2.0/chapter12/#64 |
2010-02-27 19:51:42
|
设置错误警告
|
|
xiang544@163.com
|
2.0/chapter12/#61 |
2010-02-27 19:50:55
|
这是一个<literal> 500.html</literal> 的例子,可以把它作为一个起点:
|
|
xiang544@163.com
|
2.0/chapter12/#60 |
2010-02-27 19:46:20
|
因此,最好的方法就是避免模板继承,并且用一些非常简单的东西。
|
|
xiang544@163.com
|
2.0/chapter12/#59 |
2010-02-27 19:39:22
|
(例如:它不应该使用自定义模板标签。)如果它用到了模板继承,那么父模板也就不应该依赖可能被破坏的基础构件。
|
|
xiang544@163.com
|
2.0/chapter12/#58 |
2010-02-27 19:31:27
|
这里有一个关于500.html的比较棘手的问题。你永远不能确定<literal> 为什么</literal>会显示这个模板,所以它不应该做任何需要连接数据库,或者依赖任何可能被破坏的基础构件的事情。
|
|
|
2.0/chapter09/#695 |
2010-02-26 16:45:56
|
延续本章的高级话题,<reference name="next chapter" refuri="../chapter10/">下一章</reference> 会继续讨论Django模版的高级用法。
|
|
xiang544@163.com
|
2.0/chapter12/#46 |
2010-02-24 14:10:56
|
假定你使用的模板继承并定义一个 <literal> base.html</literal>,该页面由<literal>title</literal><literal>content</literal>两块组成。
|
|
xiang544@163.com
|
2.0/chapter12/#55 |
2010-02-24 14:09:37
|
作为代替,它会查找一个名为<literal> 500.html</literal> 的模板并且显示它。
|
|
xiang544@163.com
|
2.0/chapter12/#58 |
2010-02-24 01:08:17
|
这里有一个关于500.html的比较棘手的问题。你永远不能确定<literal> 为什么</literal>会显示这个模板,所以它不应该做任何需要连接数据库或者依赖任何可能被破坏的基础构件的事情。
|
|
xiang544@163.com
|
2.0/chapter12/#52 |
2010-02-24 00:46:46
|
实现一个500模板
|
|
xiang544@163.com
|
2.0/chapter12/#50 |
2010-02-24 00:46:33
|
(它将在<literal> sunserver</literal> 上工作的和开发服务器上一样好)
|
|
xiang544@163.com
|
2.0/chapter12/#49 |
2010-02-24 00:46:18
|
要测试你的<literal>404.html</literal>页面是否正常工作,仅仅需要将<literal>DEBUG</literal> 设置为<literal> False</literal> ,并且访问一个并不存在的URL。
|
|
xiang544@163.com
|
2.0/chapter12/#46 |
2010-02-24 00:46:00
|
假定你使用的模板继承并定义一个 <literal> base.html</literal>,该页面由<literal>title</literal><literal>content</literal>两块组成。
|
|
xiang544@163.com
|
2.0/chapter12/#45 |
2010-02-24 00:45:45
|
这里有一个<literal> 404.html</literal>的示例,你可以从它开始。
|
|
xiang544@163.com
|
2.0/chapter12/#56 |
2010-02-24 00:40:30
|
像<literal> 404.html</literal> 一样,这个模板应该被放置在你的模板根目录下。
|
|
xiang544@163.com
|
2.0/chapter12/#54 |
2010-02-24 00:38:55
|
类似的,如果<literal> DEBUG</literal> 设置为<literal> False</literal> ,Djang不再会显示它自带的应对未处理的Python异常的错误反馈页面。
|
|
xiang544@163.com
|
2.0/chapter12/#55 |
2010-02-24 00:38:13
|
作为代替,它会查找一个名为<literal> 500.html</literal> 的模板并且绑定它。
|
|
xiang544@163.com
|
2.0/chapter12/#54 |
2010-02-24 00:36:34
|
类似的,如果<literal> DEBUG</literal> 设置为<literal> False</literal> ,Djang不再会显示它自带的应对未处理Python异常的错误反馈页面。
|
|
xiang
|
2.0/chapter12/#52 |
2010-02-24 00:26:45
|
实现一个500模板
|
|
xiang
|
2.0/chapter12/#50 |
2010-02-24 00:26:06
|
(它将在<literal> sunserver</literal> 上工作的和开发服务器上一样好)
|
|
xiang
|
2.0/chapter12/#49 |
2010-02-24 00:22:11
|
要测试你的<literal>404.html</literal>页面是否正常工作,仅仅需要将<literal>DEBUG</literal> 设置为<literal> False</literal> ,并且访问一个并不存在的URL。
|
|
xiang
|
2.0/chapter12/#45 |
2010-02-24 00:18:43
|
这里有一个<literal> 404.html</literal>的示例,你可以从它开始。
|
|
xiang
|
2.0/chapter12/#45 |
2010-02-24 00:18:04
|
这里有一个示例的<literal> 404.html</literal> ,你可以从它开始。
|
|
xiang
|
2.0/chapter12/#46 |
2010-02-24 00:15:53
|
假定你使用的模板继承并定义一个 <literal> base.html</literal>,该页面由<literal>title</literal><literal>content</literal>两块组成。
|
|
xiang
|
2.0/chapter12/#46 |
2010-02-24 00:15:21
|
假定你使用的模板继承并定义一个 <literal> base.html</literal>,该页面由<literal>title</literal><literal>content</literal>两块组成。
|
|
xiang
|
2.0/chapter07/#20 |
2010-02-23 23:57:18
|
|
|
2.0/chapter15/#251 |
2010-02-23 22:05:16
|
示例:
|
|
|
2.0/chapter04/#89 |
2010-02-22 16:40:36
|
Django搜索DJANGO_SETTINGS_MODULE环境变量,它被设置在settings.py中。例如,假设mysite在你的Python搜索路径中,那么DJANGO_SETTINGS_MODULE应该被设置为:'mysite.settings'。
|
|
PolarBear
|
2.0/chapter06/#183 |
2010-02-12 22:50:58
|
其它的<literal>django.contrib</literal>应用程序,如<literal>django.contrib.redirects</literal>,其它从网上下载的第三方Django应用程序一样,都会自行添加到管理工具。
|
“下在”更改为“下载”
|
yulefox
|
2.0/chapter01/#182 |
2010-02-09 09:14:17
|
对你来说,学习Django就是学习她的命名规则和API。
|
|
yulefox
|
2.0/chapter01/#181 |
2010-02-09 09:13:57
|
基本上,Django的代码并 没有使用一些黑色魔法(例如代码中的欺骗行为,某个实现解释或者理解起来十分困难)。
|
|
yulefox
|
2.0/chapter01/#180 |
2010-02-09 09:13:03
|
如果你有Python开发经验,在学习过程中应该不会有任何问题。
|
|
yulefox
|
2.0/chapter01/#24 |
2010-02-09 09:11:03
|
最重要的是,理解实现的来龙去脉会使你成为一个优秀的web开发者。)
|
|
yulefox
|
2.0/chapter01/#24 |
2010-02-09 09:10:30
|
最重要的是,理解实现的<emphasis></emphasis>会使你成为一个优秀的web开发者。)
|
|
yulefox
|
2.0/chapter20/#56 |
2010-02-08 18:04:28
|
此时,查询的字符串会构造如下:
|
|
yulefox
|
2.0/chapter20/#55 |
2010-02-08 18:04:10
|
想象一下,如果攻击者在查询框中输入 <literal>"' OR 'a'='a"</literal> 。
|
移到下一句
|
|
2.0/chapter07/#20 |
2010-02-08 10:35:09
|
|
anuan
|
2.0/chapter12/#19 |
2010-02-08 05:45:58
|
我们在第2章,用命令 <literal>django-admin.py startproject</literal>创建了一个项目 , 其中创建的 <literal>settings.py</literal> 文件的 <literal>DEBUG</literal> 设置默认为 <literal>True</literal> . django会根据这个设置来改变他们的行为, 如果 <literal>DEBUG</literal> 模式被开启.
|
|
django-fans
|
2.0/chapter20/#155 |
2010-02-04 05:47:47
|
包括攻击本身及其使用的工具都在有详细介绍。<reference name="Chapter 16" refuri="../chapter16/">16章</reference> |
new
|
fallhunter
|
2.0/chapter09/#0 |
2010-01-26 21:42:45
|
第九章 模板高级进阶
|
|
fallhunter
|
2.0/chapter14/#519 |
2010-01-26 21:27:55
|
一个简单的 template 看起来是这样的
|
|
polarbear
|
2.0/chapter03/#183 |
2010-01-25 21:19:18
|
<literal></literal> |
|
polarbear
|
2.0/chapter03/#183 |
2010-01-25 21:18:33
|
<literal></literal> |
原文为‘?’翻译时应该是搞错为‘*’
|
|
2.0/chapter02/#0 |
2010-01-25 16:27:29
|
第二章:入门
|
|
charonking
|
2.0/chapter08/#476 |
2010-01-25 02:13:04
|
这一章提供了很多高级视图和URLconfs的小提示和技巧。
|
|
Prow
|
2.0/chapter20/#90 |
2010-01-24 13:03:49
|
(详见第十章)
|
|
|
|