Changelog

全名 页面 提交时间 (Descending) Unsort 内容 注释 ...
agn0stic 2.0/chapter08/#373 2009-12-16 21:17:47 为了实现这个,我们可以使用Python中一个优雅的特性
lilinbo 2.0/chapter09/#241 2009-12-16 10:03:09 这是一个模板的例子
yukonli 2.0/chapter08/#371 2009-12-15 18:00:44 然而,当我们做到这一步时,我们仍然可以改进<literal> method_splitter</literal> 。从代码我们可以看到,它假设<literal> Get</literal><literal> POST</literal> 视图除了<literal> request</literal> 之外不需要任何其他的参数。那么,假如我们想要使用<literal> method_splitter</literal> 与那种会从URL里捕捉字符,或者会接收一些可选参数的视图一起工作时该怎么办呢?
yukonli 2.0/chapter08/#371 2009-12-15 17:23:43 然而,当我们做到这一步时,我们仍然可以改进method_splitter。从代码我们可以看到,它假设GetPOST视图除了request之外不需要任何其他的参数。那么,假如我们想要使用method_splitter与那种会从URL里捕捉字符,或者会接收一些可选参数的视图一起工作时该怎么办呢?
yukonli 2.0/chapter08/#291 2009-12-15 16:43:01 比方说,你可以考虑通过下面这个URLpattern所描述的方式来向Django的管理站点添加一个目标页面
2.0/chapter04/#525 2009-12-14 11:46:31 <emphasis>假定设计师不是 Python 程序员</emphasis> 。模板系统开发人员认为:模板通常由设计师来编写而非程序员,因此不应被假定拥有Python开发知识。
shishikan 2.0/chapter16/#589 2009-12-10 09:09:33 在下一章,我们将介绍Django的中间件并解释怎样写出自己的中间件
shishikan 2.0/chapter06/#533 2009-12-09 14:06:27 请记住这一点,它是有效使用管理界面的钥匙。 test
old_taoist 2.0/chapter07/#323 2009-12-08 14:42:32 这就是web开发的最佳实践。
old_taoist 2.0/chapter07/#37 2009-12-08 14:40:41 <literal>"127.0.0.1:8000"</literal> or <literal>"www.example.com"</literal>
old_taoist 2.0/chapter07/#39 2009-12-08 14:40:25 <literal>request.get_full_path()</literal>
old_taoist 2.0/chapter07/#33 2009-12-08 14:40:13 <literal>request.get_host()</literal>
old_taoist 2.0/chapter07/#31 2009-12-08 14:39:59 <literal>"/hello/"</literal>
old_taoist 2.0/chapter07/#27 2009-12-08 14:39:43 <literal>request.path</literal>
old_taoist 2.0/chapter07/#20 2009-12-08 14:38:51
old_taoist 2.0/chapter07/#43 2009-12-08 14:38:08 <literal>"/hello/?print=true"</literal>
old_taoist 2.0/chapter07/#45 2009-12-08 14:37:51 <literal>request.is_secure()</literal>
old_taoist 2.0/chapter07/#50 2009-12-08 14:37:24 <literal>True</literal> 或者 <literal>False</literal>
old_taoist 2.0/chapter07/#68 2009-12-08 14:36:53 <literal>"Mozilla/5.0 (X11; U; Linux i686; fr-FR; rv:1.8.1.17) Gecko/20080829 Firefox/2.0.0.17"</literal> .
old_taoist 2.0/chapter07/#438 2009-12-08 14:36:11 <literal>"I love your site!"</literal>
old_taoist 2.0/chapter07/#517 2009-12-08 14:35:20 Hosting graciously provided by
old_taoist 2.0/chapter07/#516 2009-12-08 14:35:04 Document License`_.
old_taoist 2.0/chapter19/#53 2009-12-08 14:29:38 我们将详细地对以上步骤逐一进行描述。
old_taoist 2.0/chapter19/#27 2009-12-08 14:26:31 本质上来说,Django做两件事情:
old_taoist 2.0/chapter19/#25 2009-12-08 14:24:53 Django会根据用户的语言偏好,在线地运用这些异常分支指令去翻译Web应用程序。
old_taoist 2.0/chapter19/#18 2009-12-08 14:21:10 即使您的母语不是英语,Django也很有可能已经被翻译为您的母语了。
old_taoist 2.0/chapter19/#16 2009-12-08 14:18:01 Django本身是完全国际化了的,所有的字符串均因翻译所需而被标记,并且设定了与地域无关的显示控制值,如时间和日期。
old_taoist 2.0/chapter19/#4 2009-12-08 14:16:17 Django诞生于美国中部堪萨斯的劳伦斯,距美国的地理中心不到40英里。
2.0/chapter08/#369 2009-12-07 15:59:58 现在我们就拥有了一个不错的,可以通用的视图函数了,里边封装着由<literal> request.method</literal> 的返回值来分派不同的视图的程序。关于<literal> method_splitter()</literal> 就不说什么了,当然,我们可以把它们重用到其它项目中。
2.0/chapter08/#367 2009-12-07 15:47:50 (比如,<literal> some_page_post()</literal> 被调用的时候,我们可以确信<literal> request.method</literal> 返回的值是<literal> post</literal> 。)当然,这样做不止更安全也能更好的将代码文档化,这里我们做了一个假定,就是<literal> request.method</literal> 能象我们所期望的那样工作。
2.0/chapter08/#367 2009-12-07 15:44:31 (比如,<literal> some_page_post()</literal> 被调用的时候,我们可以确信<literal> request.method</literal> 返回的值是<literal> post</literal> 。)当然,这样做不止更安全也能更好的将代码文档化,这里我们做了一个假定,就是<literal> request.method</literal> 会象我们所期望的那样工作。
2.0/chapter08/#366 2009-12-07 15:28:20 注意,在技术上这些视图函数就不用再去检查<literal> request.method</literal> 了,因为<literal> method_splitter()</literal> 已经替它们做了。
2.0/chapter08/#366 2009-12-07 15:28:00 注意,在技术上这些试图函数就不用再去检查<literal> request.method</literal> 了,因为<literal> method_splitter()</literal> 已经替它们做了。
2.0/chapter08/#364 2009-12-07 15:17:46 最终,我们把<literal> some_page()</literal> 视图分解到两个视图函数中<literal> some_page_get()</literal><literal> some_page_post()</literal> 。这比把所有逻辑都挤到一个单一视图的做法要优雅得多。
2.0/chapter08/#362 2009-12-07 15:10:43 在URLconf中,我们把<literal> /somepage/</literal> 指到<literal> method_splitter()</literal> 函数,并把视图函数额外需要用到的<literal> GET</literal><literal> POST</literal> 参数传递给它。
2.0/chapter08/#362 2009-12-07 15:08:24 在URLconf中,我们把<literal> /somepage/</literal> 指到<literal> method_splitter()</literal> 函数,并把视图函数需要用到的<literal> GET</literal><literal> POST</literal> 参数传递给它。
2.0/chapter08/#360 2009-12-07 14:58:49 如果<literal> request.method</literal> 返回的是其它值(如:<literal> HEAD</literal> ),或者是没有把<literal> GET</literal><literal> POST</literal> 提交给此函数,那它就会抛出一个<literal> Http404</literal> 错误。
2.0/chapter08/#359 2009-12-07 12:43:07 如果<literal> request.method</literal> 返回的是<literal> POST</literal> ,那它调用的就是<literal> POST</literal> 视图。
2.0/chapter08/#358 2009-12-07 12:42:06 我们写了一个新的视图,<literal> method_splitter()</literal> ,它根据<literal> request.method</literal> 返回的值来调用相应的视图。可以看到它带有两个关键参数,<literal> GET</literal><literal> POST</literal> ,也许应该是<emphasis> 视图函数</emphasis> 。如果<literal> request.method</literal> 返回<literal> GET</literal> ,那它就会自动调用<literal> GET</literal> 视图。
2.0/chapter08/#356 2009-12-07 12:29:21 让我们从头看一下代码是如何工作的:
2.0/chapter08/#353 2009-12-07 12:27:31 下边的示例展示了这个技术是如何帮我们改进前边那个简单的<literal> some_page()</literal> 视图的:
2.0/chapter08/#353 2009-12-07 12:27:15 下边的示例展示了这个技术是如何帮我们改进前边那个简单的<literal> some_page()</literal> 视图函数的:
2.0/chapter08/#352 2009-12-07 12:22:57 我们可以像这样做:先写一个视图函数然后由它来具体分派其它的视图,在之前或之后可以执行一些我们自定的程序逻辑。
2.0/chapter08/#352 2009-12-07 12:19:00 我们可以像这样做:先写一个视图函数然后由它来具体分派其它的视图。
2.0/chapter08/#350 2009-12-07 12:08:57 一个比较好的设计习惯应该是,用两个分开的视图函数——一个处理<literal> POST</literal> 请求,另一个处理<literal> GET</literal> 请求,然后在相应的地方分别进行调用。
2.0/chapter08/#349 2009-12-07 12:02:51 <literal> /somepage/.</literal>正如大家所看到的,在同一个视图函数中对<literal> POST</literal><literal> GET</literal> 进行处理是一种很初级也很粗糙的做法。
2.0/chapter08/#349 2009-12-07 12:01:42 <literal></literal> .正如大家所看到的,在同一个视图函数中对<literal> POST</literal><literal> GET</literal> 进行处理是一种很初级也很粗糙的做法。
2.0/chapter08/#349 2009-12-07 11:59:57 <literal></literal> .从这点来看,在同一个视图函数中对<literal> POST</literal><literal> GET</literal> 进行处理是一种很初级也很粗糙的做法。
2.0/chapter08/#349 2009-12-07 11:58:28 <literal></literal> .从这点来看,在同一个视图函数中对<literal> POST</literal><literal></literal> 进行处理是一种很初级也很粗糙的做法。
2.0/chapter08/#349 2009-12-07 11:57:56 <literal></literal> .从这点来看,在同一个视图函数中对<literal> POST</literal><literal></literal> 进行处理是一种很初级也很粗糙的做法。
« < 47 48 49 50 51 52 53 > » 96 pages