|  | 
     | 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> 进行处理是一种很初级也很粗糙的做法。 |  |