I love programming: two-liner shortcut turns to be a massive core refactoring ;) Ivan, thank you for the research.
I'll provide a draft patch for 'render == TemplateResponse' soon. By the way, Łukasz Rekucki's suggestion to add the 'response_class' to render shortcut is complicated much by TemplateResponse because SimpleTemplateResponse is inherited from HttpResponse. On 21 окт, 22:34, Ivan Sagalaev <man...@softwaremaniacs.org> wrote: > On 10/21/2010 03:22 PM, Ivan Sagalaev wrote: > > > On 10/21/2010 11:49 AM, Mikhail Korobov wrote: > >> 2. Does TemplateResponse allow pretty exception pages or not? Is Ben's > >> issue resolved? > > > I'll look into it this evening (MSD). > > So I did. > > There are actually two problems: > > - Exceptions in response middleware are indeed happen outside of the > request's `try .. except` block. This is a problem by itself[1] and I'd > be happy to fix it after ticket 9886[2] is committed. It's another > refactoring of core request code so I don't want to mess things up doing > one patch on top of another :-). > > - Non-pretty plain text tracebacks can be caused not only be middleware > but also by any error occurring during template rendering. Because all > this happen *after* request was returned to the web server handler and > is being iterated over. > > This second problem can be easily fixed by introducing a method for > explicit evaluation of the content: `evaluate()` or `force_content()` > that will be a noop for any HttpRespone class except the > TemplateResponse. The method will be called by the request handler right > before returning the response. > > Sounds good? > > P.S. BTW looking at the TemplateResponse implementation I see that Simon > had actually intended it to be effectively *the* render shortcut[3]. I > find it quite beautiful really :-) > > [1]:http://code.djangoproject.com/ticket/14523 > [2]:http://code.djangoproject.com/ticket/9886 > [3]:http://github.com/simonw/django-openid/blob/master/django_openid/resp... -- You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to django-develop...@googlegroups.com. To unsubscribe from this group, send email to django-developers+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.