2007年10月21日 星期日 01:37
ÎÒÏë¿ÉÒÔÔÚurlÅäÖÃÎļþÀïÃæÈ¥´«some_variable£¬¿ÉÒÔÃâȥһЩÖظ´´úÂë ÔÚʹÓÃgeneric_viewµÄʱºò£º querysetÖмÓÈëextra_context ¾Í¿ÉÒÔÁË 'extra_context' : {'some_variable':some_variable,} Èç¹û²»ÊÇʹÓÃgeneric_view some_variable urlpatterns = patterns('app.views', (r'^app/a/$', 'view_a', {'some_variable': some_variable}), (r'^app/b/$', 'view_b', {'some_variable': some_variable}), ) »òÕßÊÇ°Ñÿ¸öappµÄview¶¼·Öϸһµã£¬±ÈÈçÿ¸öview¶¼ÄÜÄóöÀ´×öÒ»¸öblock£¬×îºóÔÙ°ÑÕâЩview×éºÏÆðÀ´×÷Ϊһ¸öÒ³ÃæÊä³ö¡£ ±ÈÈçÓÐblog,tag 2¸öapp£¬ÏëÔÚblogµÄÿҳ¶¼¼ÓÒ»¸ötag list¡£ blogµÄview¿ÉÒÔ·Ö³É blog_list, blog_detail¡£ tagµÄview¿ÉÒÔÓÐÒ»¸ö tag_list¡£ blog µÄÄ£°å´ó¸Å¿ÉÒÔÊÇ {% extends "base.html" %}{{ content}}Ê×Ò³¶ÔÓ¦µÄview¾Í¿ÉÒÔÊÇ°Ñ blog.view.blog_list·µ»ØµÄÖµ ¸³Öµµ½content±äÁ¿£¬tag.view.tag_list ·µ»ØµÄÖµ¸³¸øsidebar±äÁ¿¡£ ijƪblogÐÅÏ¢¶ÔÓ¦µÄview ¾Í¿ÉÒÔ°Ñblog.view.blog_detail·µ»ØµÄÖµ¸³¸øcontent. tag.view.tag_list ·µ»ØµÄÖµ»¹ÊǸ³¸øsidebar±äÁ¿¡£ ÕâÑùµÄ»°Óжà¸öappÒ²¿ÉÒԱȽϷ½±ãµÄ×éºÏµ½Ò³Ã棬¶ø²»ÓÃÿ¸öÒ³Ã涼ҪÔÚviewÖаÑËùÓÐmodel¶¼Import¹ýÀ´¡£ µ«ÊÇÕâÑùµÄ»°¾Í²»ÄÜÖ±½ÓʹÓÃgeneric_viewÁË£¬µÃ¼ä½ÓµÄÓà from django.views.generic.list_detail import object_detail def blog_detail(request,slug): post = Post.objects.filter(slug=slug) return object_detail(request, queryset=post) On 8/29/07, Neil(ľҰºü) <chenrong2003在gmail.com> wrote: > > > > > »¹ÊDz»Ì«¶®¡£djangoÖеÄÄ£°å£¬×ÓÄ£°å¿ÉÒÔʹÓø¸Ä£°åµÄ±äÁ¿°¡¡£ > > > > ===== > ±ÈÈ縸ģ°å½Ð×ö base.html, ÓÐÁ½¸ö×ÓÄ£°å a.html, b.html ·Ö±ð¶ÔÓ¦ÓÚ view_a ºÍ view_b, > ÔÚ base.html ÀïÃæÎÒ¶¨ÒåÒ»¸ö {{ some_variable }} > > ¶øÕâ¸ö some_variable ÊÇÒªÔÚ view_a ºÍ view_b ÖÐÖ¸¶¨¸øÄ£°åµÄ£¬ÕâÑùÈç¹û×ÓÄ£°åºÜ¶à¾ÍºÜÖظ´¡£ > ÎÒµÄÒâ˼ÊÇ base.html ²»ÄÜ´îÅäÒ»¸ö×Ô¼ºµÄ view_base£¬ÔÚÀïÃæÖ´ÐÐ×Ô¼ºµÄÄ£°å±äÁ¿¸³ÖµÂß¼¡£ÕâÑù¾Í»áµ¼ÖÂÉÏÊöµÄÇé¿ö³öÏÖ¡£ > > > > > > > > ÒÔÇ°ÓÐÈËд¹ýÒ»¸ötag£¬ÊÇ¿ÉÒÔ²åÈë´úÂëµÄ£¬ºÃÏó·ÅÔÚÁË djangosnippets.org ÉÏ£¬ÄãÕÒÕÒ¿´£¬ÎÒ²»¼ÇµÃÁË¡£ > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20071021/86958683/attachment.html
2007年10月21日 星期日 02:20
return object_detail(request, queryset=post) Õâ¸ö·µ»ØµÄÊÇ HttpResponse ¶ÔÏó¡£ ¿ÉÄܵÃÓà .contentÀ´È¡htmlÄÚÈÝ ºóÃæ˵µÄÄǸöÎÒ»¹Ã»ÊÔ¹ý£¬Ö»ÊÇÒ»¸öÕâÑùµÄÏë·¨ :p On 10/21/07, @@ <askfor在gmail.com> wrote: > > ÎÒÏë¿ÉÒÔÔÚurlÅäÖÃÎļþÀïÃæÈ¥´«some_variable£¬¿ÉÒÔÃâȥһЩÖظ´´úÂë > ÔÚʹÓÃgeneric_viewµÄʱºò£º > querysetÖмÓÈëextra_context ¾Í¿ÉÒÔÁË > 'extra_context' : {'some_variable':some_variable,} > Èç¹û²»ÊÇʹÓÃgeneric_view > some_variable > urlpatterns = patterns('app.views', > (r'^app/a/$', 'view_a', {'some_variable': some_variable}), > (r'^app/b/$', 'view_b', {'some_variable': some_variable}), > ) > > »òÕßÊÇ°Ñÿ¸öappµÄview¶¼·Öϸһµã£¬±ÈÈçÿ¸öview¶¼ÄÜÄóöÀ´×öÒ»¸öblock£¬×îºóÔÙ°ÑÕâЩview×éºÏÆðÀ´×÷Ϊһ¸öÒ³ÃæÊä³ö¡£ > ±ÈÈçÓÐblog,tag 2¸öapp£¬ÏëÔÚblogµÄÿҳ¶¼¼ÓÒ»¸ötag list¡£ > blogµÄview¿ÉÒÔ·Ö³É blog_list, blog_detail¡£ > tagµÄview¿ÉÒÔÓÐÒ»¸ö tag_list¡£ > > blog µÄÄ£°å´ó¸Å¿ÉÒÔÊÇ > {% extends "base.html" %} >> {{ content}} > > > {{side_bar}} > > Ê×Ò³¶ÔÓ¦µÄview¾Í¿ÉÒÔÊÇ°Ñ blog.view.blog_list·µ»ØµÄÖµ ¸³Öµµ½content±äÁ¿£¬tag.view.tag_list > ·µ»ØµÄÖµ¸³¸øsidebar±äÁ¿¡£ > ijƪblogÐÅÏ¢¶ÔÓ¦µÄview ¾Í¿ÉÒÔ°Ñblog.view.blog_detail·µ»ØµÄÖµ¸³¸øcontent. tag.view.tag_list > ·µ»ØµÄÖµ»¹ÊǸ³¸øsidebar±äÁ¿¡£ > ÕâÑùµÄ»°Óжà¸öappÒ²¿ÉÒԱȽϷ½±ãµÄ×éºÏµ½Ò³Ã棬¶ø²»ÓÃÿ¸öÒ³Ã涼ҪÔÚviewÖаÑËùÓÐmodel¶¼Import¹ýÀ´¡£ > µ«ÊÇÕâÑùµÄ»°¾Í²»ÄÜÖ±½ÓʹÓÃgeneric_viewÁË£¬µÃ¼ä½ÓµÄÓà > from django.views.generic.list_detail import object_detail > def blog_detail(request,slug): > post = Post.objects.filter(slug=slug) > return object_detail(request, queryset=post) > > > On 8/29/07, Neil(ľҰºü) <chenrong2003在gmail.com> wrote: > > > > > > > > »¹ÊDz»Ì«¶®¡£djangoÖеÄÄ£°å£¬×ÓÄ£°å¿ÉÒÔʹÓø¸Ä£°åµÄ±äÁ¿°¡¡£ > > > > > > ===== > > ±ÈÈ縸ģ°å½Ð×ö base.html, ÓÐÁ½¸ö×ÓÄ£°å a.html, b.html ·Ö±ð¶ÔÓ¦ÓÚ view_a ºÍ view_b, > > ÔÚ base.html ÀïÃæÎÒ¶¨ÒåÒ»¸ö {{ some_variable }} > > > > ¶øÕâ¸ö some_variable ÊÇÒªÔÚ view_a ºÍ view_b ÖÐÖ¸¶¨¸øÄ£°åµÄ£¬ÕâÑùÈç¹û×ÓÄ£°åºÜ¶à¾ÍºÜÖظ´¡£ > > ÎÒµÄÒâ˼ÊÇ base.html ²»ÄÜ´îÅäÒ»¸ö×Ô¼ºµÄ view_base£¬ÔÚÀïÃæÖ´ÐÐ×Ô¼ºµÄÄ£°å±äÁ¿¸³ÖµÂß¼¡£ÕâÑù¾Í»áµ¼ÖÂÉÏÊöµÄÇé¿ö³öÏÖ¡£ > > > > > > > > > > > > > ÒÔÇ°ÓÐÈËд¹ýÒ»¸ötag£¬ÊÇ¿ÉÒÔ²åÈë´úÂëµÄ£¬ºÃÏó·ÅÔÚÁË djangosnippets.org ÉÏ£¬ÄãÕÒÕÒ¿´£¬ÎÒ²»¼ÇµÃÁË¡£ > > _______________________________________________ > > python-chinese > > Post: send python-chinese在lists.python.cn > > Subscribe: send subscribe to python-chinese-request在lists.python.cn > > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > > Detail Info: http://python.cn/mailman/listinfo/python-chinese > > > -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20071021/484b83fd/attachment.htm
2007年10月21日 星期日 17:42
ÎÒҪôдcontext_processor»òÕ߸øviewдһ¸ödecoratorÀ´½â¾ö¡£ On 10/21/07, @@ <askfor在gmail.com> wrote: > > return object_detail(request, queryset=post) Õâ¸ö·µ»ØµÄÊÇ HttpResponse ¶ÔÏó¡£ > ¿ÉÄܵÃÓà .contentÀ´È¡htmlÄÚÈÝ > ºóÃæ˵µÄÄǸöÎÒ»¹Ã»ÊÔ¹ý£¬Ö»ÊÇÒ»¸öÕâÑùµÄÏë·¨ :p > > > On 10/21/07, @@ <askfor在gmail.com> wrote: > > > > ÎÒÏë¿ÉÒÔÔÚurlÅäÖÃÎļþÀïÃæÈ¥´«some_variable£¬¿ÉÒÔÃâȥһЩÖظ´´úÂë > > ÔÚʹÓÃgeneric_viewµÄʱºò£º > > querysetÖмÓÈëextra_context ¾Í¿ÉÒÔÁË > > 'extra_context' : {'some_variable':some_variable,} > > Èç¹û²»ÊÇʹÓÃgeneric_view > > some_variable > > urlpatterns = patterns('app.views', > > (r'^app/a/$', 'view_a', {'some_variable': some_variable}), > > (r'^app/b/$', 'view_b', {'some_variable': some_variable}), > > ) > > > > »òÕßÊÇ°Ñÿ¸öappµÄview¶¼·Öϸһµã£¬±ÈÈçÿ¸öview¶¼ÄÜÄóöÀ´×öÒ»¸öblock£¬×îºóÔÙ°ÑÕâЩview×éºÏÆðÀ´×÷Ϊһ¸öÒ³ÃæÊä³ö¡£ > > ±ÈÈçÓÐblog,tag 2¸öapp£¬ÏëÔÚblogµÄÿҳ¶¼¼ÓÒ»¸ötag list¡£ > > blogµÄview¿ÉÒÔ·Ö³É blog_list, blog_detail¡£ > > tagµÄview¿ÉÒÔÓÐÒ»¸ö tag_list¡£ > > > > blog µÄÄ£°å´ó¸Å¿ÉÒÔÊÇ > > {% extends "base.html" %} > >> > {{ content}} > > > > > > {{side_bar}} > > > > Ê×Ò³¶ÔÓ¦µÄview¾Í¿ÉÒÔÊÇ°Ñ blog.view.blog_list·µ»ØµÄÖµ ¸³Öµµ½content±äÁ¿£¬tag.view.tag_list > > ·µ»ØµÄÖµ¸³¸øsidebar±äÁ¿¡£ > > ijƪblogÐÅÏ¢¶ÔÓ¦µÄview ¾Í¿ÉÒÔ°Ñblog.view.blog_detail·µ»ØµÄÖµ¸³¸øcontent. > > tag.view.tag_list·µ»ØµÄÖµ»¹ÊǸ³¸øsidebar±äÁ¿¡£ > > ÕâÑùµÄ»°Óжà¸öappÒ²¿ÉÒԱȽϷ½±ãµÄ×éºÏµ½Ò³Ã棬¶ø²»ÓÃÿ¸öÒ³Ã涼ҪÔÚviewÖаÑËùÓÐmodel¶¼Import¹ýÀ´¡£ > > µ«ÊÇÕâÑùµÄ»°¾Í²»ÄÜÖ±½ÓʹÓÃgeneric_viewÁË£¬µÃ¼ä½ÓµÄÓà > > from django.views.generic.list_detail import object_detail > > def blog_detail(request,slug): > > post = Post.objects.filter(slug=slug) > > return object_detail(request, queryset=post) > > > > > > On 8/29/07, Neil(ľҰºü) <chenrong2003在gmail.com > wrote: > > > > > > > > > > > »¹ÊDz»Ì«¶®¡£djangoÖеÄÄ£°å£¬×ÓÄ£°å¿ÉÒÔʹÓø¸Ä£°åµÄ±äÁ¿°¡¡£ > > > > > > > > ===== > > > ±ÈÈ縸ģ°å½Ð×ö base.html, ÓÐÁ½¸ö×ÓÄ£°å a.html, b.html ·Ö±ð¶ÔÓ¦ÓÚ view_a ºÍ view_b, > > > ÔÚ base.html ÀïÃæÎÒ¶¨ÒåÒ»¸ö {{ some_variable }} > > > > > > ¶øÕâ¸ö some_variable ÊÇÒªÔÚ view_a ºÍ view_b ÖÐÖ¸¶¨¸øÄ£°åµÄ£¬ÕâÑùÈç¹û×ÓÄ£°åºÜ¶à¾ÍºÜÖظ´¡£ > > > ÎÒµÄÒâ˼ÊÇ base.html ²»ÄÜ´îÅäÒ»¸ö×Ô¼ºµÄ view_base£¬ÔÚÀïÃæÖ´ÐÐ×Ô¼ºµÄÄ£°å±äÁ¿¸³ÖµÂß¼¡£ÕâÑù¾Í»áµ¼ÖÂÉÏÊöµÄÇé¿ö³öÏÖ¡£ > > > > > > > > > > > > > > > > > > ÒÔÇ°ÓÐÈËд¹ýÒ»¸ötag£¬ÊÇ¿ÉÒÔ²åÈë´úÂëµÄ£¬ºÃÏó·ÅÔÚÁË djangosnippets.org ÉÏ£¬ÄãÕÒÕÒ¿´£¬ÎÒ²»¼ÇµÃÁË¡£ > > > _______________________________________________ > > > python-chinese > > > Post: send python-chinese在lists.python.cn > > > Subscribe: send subscribe to python-chinese-request在lists.python.cn > > > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > > > Detail Info: http://python.cn/mailman/listinfo/python-chinese > > > > > > > > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese > -- Nicholas @ Nirvana Studio http://www.nirvanastudio.org -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20071021/1dcb4891/attachment.htm
2007年10月22日 星期一 11:39
推荐cheetah,速度绝对是python这些模板里面的first class,稳定性也是没的说的。
2007年10月22日 星期一 11:46
On 10/22/07, doudou doudou <array.doudou在gmail.com> wrote: > > 推荐cheetah,速度绝对是python这些模板里面的first class,稳定性也是没的说的。 > Cheetah 没有Mako 快 ;) 受不了Django 模板的,改投 TurboGears/Pylons吧 XD -- simple is good http://brucewang.net http://twitter.com/number5 http://www.linkist.com skype: number5 -------------- 下一部分 -------------- 一个HTML附件被移除... URL: http://python.cn/pipermail/python-chinese/attachments/20071022/e5b22858/attachment.html
2007年10月22日 星期一 15:16
没想到这么久了,还有朋友看到这个帖子。 感谢各位的信息,我现在用 Middleware 和 context_processor 解决了一些问题,但还是不够理想。 在 07-10-22,Bruce Wang<number5在gmail.com> 写道: > > > On 10/22/07, doudou doudou <array.doudou在gmail.com> wrote: > > 推荐cheetah,速度绝对是python这些模板里面的first class,稳定性也是没的说的。 > > > > Cheetah 没有Mako 快 ;) > > 受不了Django 模板的,改投 TurboGears/Pylons吧 XD > > > -- > simple is good > http://brucewang.net > http://twitter.com/number5 > http://www.linkist.com > skype: number5 > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to > python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to > python-chinese-request在lists.python.cn > Detail Info: > http://python.cn/mailman/listinfo/python-chinese >
2007年10月22日 星期一 15:21
url 配置中添加,则只能是一些已知的变量。如果我需要共享的变量是从 url 中的参数值计算得知,这个方法就不适用了。归根到底,django 的 view 是函数而不是类,这个就没法继承达到更好的重用。 在 07-10-21,@@<askfor在gmail.com> 写道: > 我想可以在url配置文件里面去传some_variable,可以免去一些重复代码 > 在使用generic_view的时候: > queryset中加入extra_context 就可以了 > 'extra_context' : {'some_variable':some_variable,} > 如果不是使用generic_view > some_variable > urlpatterns = patterns('app.views', > (r'^app/a/$', 'view_a', {'some_variable': some_variable}), > (r'^app/b/$', 'view_b', {'some_variable': some_variable}), > ) > > 或者是把每个app的view都分细一点,比如每个view都能拿出来做一个block,最后再把这些view组合起来作为一个页面输出。 > 比如有blog,tag 2个app,想在blog的每页都加一个tag list。 > blog的view可以分成 blog_list, blog_detail。 > tag的view可以有一个 tag_list。 > > blog 的模板大概可以是 > {% extends "base.html" %} >> {{ content}} > > > {{side_bar}} > > 首页对应的view就可以是把 blog.view.blog_list返回的值 > 赋值到content变量,tag.view.tag_list返回的值赋给sidebar变量。 > 某篇blog信息对应的view 就可以把blog.view.blog_detail返回的值赋给content. > tag.view.tag_list返回的值还是赋给sidebar变量。 > 这样的话有多个app也可以比较方便的组合到页面,而不用每个页面都要在view中把所有model都Import过来。 > 但是这样的话就不能直接使用generic_view了,得间接的用 > from django.views.generic.list_detail import object_detail > def blog_detail(request,slug): > post = Post.objects.filter(slug=slug) > return object_detail(request, queryset=post) > > > On 8/29/07, Neil(木野狐) <chenrong2003在gmail.com> wrote: > > > > > > > > 还是不太懂。django中的模板,子模板可以使用父模板的变量啊。 > > > > > > ===== > > 比如父模板叫做 base.html, 有两个子模板 a.html, b.html 分别对应于 view_a 和 view_b, > > 在 base.html 里面我定义一个 {{ some_variable }} > > > > 而这个 some_variable 是要在 view_a 和 view_b 中指定给模板的,这样如果子模板很多就很重复。 > > 我的意思是 base.html 不能搭配一个自己的 > view_base,在里面执行自己的模板变量赋值逻辑。这样就会导致上述的情况出现。 > > > > > > > > > > > > > 以前有人写过一个tag,是可以插入代码的,好象放在了 djangosnippets.org 上,你找找看,我不记得了。 > > _______________________________________________ > > python-chinese > > Post: send python-chinese在lists.python.cn > > Subscribe: send subscribe to > python-chinese-request在lists.python.cn > > Unsubscribe: send unsubscribe to > python-chinese-request在lists.python.cn > > Detail Info: > http://python.cn/mailman/listinfo/python-chinese > > > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to > python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to > python-chinese-request在lists.python.cn > Detail Info: > http://python.cn/mailman/listinfo/python-chinese >
2007年10月22日 星期一 15:31
我现在是写个单独的函数对context进行初始化。 :)任何一个东西都不可能100%的让人满意的。 JAVA就是,大家对现有的东西不满意,然后就去整个新的东西出来。 搞得框架慢天飞。 我现在是只要只要不太坏,就尽量用原版的:( 继承就不用了,感觉将view做成类以后就将问题给复杂化了。 不过我倒搜很希望Django能提供类似jsp include之类的功能,直接将页面的执行结果include过来。 在 07-10-22,Neil(木野狐)<chenrong2003在gmail.com> 写道: > url 配置中添加,则只能是一些已知的变量。如果我需要共享的变量是从 url 中的参数值计算得知,这个方法就不适用了。归根到底,django > 的 view 是函数而不是类,这个就没法继承达到更好的重用。
2007年10月22日 星期一 16:14
On 10/22/07, vicalloy <zbirder在gmail.com> wrote: > 我现在是写个单独的函数对context进行初始化。 > > :)任何一个东西都不可能100%的让人满意的。 > JAVA就是,大家对现有的东西不满意,然后就去整个新的东西出来。 > 搞得框架慢天飞。 > 我现在是只要只要不太坏,就尽量用原版的:( > > 继承就不用了,感觉将view做成类以后就将问题给复杂化了。 > 不过我倒搜很希望Django能提供类似jsp include之类的功能,直接将页面的执行结果include过来。 > django有include功能.我还写过一个叫catch的tag. -- I like python! UliPad <>: http://code.google.com/p/ulipad/ meide < >: http://code.google.com/p/meide/ My Blog: http://www.donews.net/limodou
2007年10月22日 星期一 16:28
Django的那个include只是将模板给include进去了,不是include执行结果。 比如一个排行榜的页面,你不单要incude模板,还得在代码中将相应的东西放到context里。 在 07-10-22,limodou<limodou在gmail.com> 写道: > django有include功能.我还写过一个叫catch的tag.
2007年10月22日 星期一 16:32
On 10/22/07, vicalloy <zbirder在gmail.com> wrote: > Django的那个include只是将模板给include进去了,不是include执行结果。 > 比如一个排行榜的页面,你不单要incude模板,还得在代码中将相应的东西放到context里。 > jsp的include不这样吗? -- I like python! UliPad <>: http://code.google.com/p/ulipad/ meide < >: http://code.google.com/p/meide/ My Blog: http://www.donews.net/limodou
2007年10月22日 星期一 17:10
JSP的include可以直接将某个页面的执行结果incude过来。 比如你可以将一个排行榜做成一个单独的页面hot.jsp、hot.do(如果用了框架)。 然后你只要将这个页面给include到主页面就可以了。 在include的时候还可以带一些相关的参数。 在 07-10-22,limodou<limodou在gmail.com> 写道: > On 10/22/07, vicalloy <zbirder在gmail.com> wrote: > > Django的那个include只是将模板给include进去了,不是include执行结果。 > > 比如一个排行榜的页面,你不单要incude模板,还得在代码中将相应的东西放到context里。 > > > jsp的include不这样吗? >
2007年10月23日 星期二 08:40
On 10/22/07, vicalloy <zbirder在gmail.com> wrote: > JSP的include可以直接将某个页面的执行结果incude过来。 > 比如你可以将一个排行榜做成一个单独的页面hot.jsp、hot.do(如果用了框架)。 > 然后你只要将这个页面给include到主页面就可以了。 > 在include的时候还可以带一些相关的参数。 > 如果jsp中也需要外部变量,如何传递.与django不一样吗?在django中,include的模板一样可以有变量和无变量.不管怎么样总得有个地方传变量吧.使用我写的catch tag就可以传参数了. -- I like python! UliPad <>: http://code.google.com/p/ulipad/ meide < >: http://code.google.com/p/meide/ My Blog: http://www.donews.net/limodou
2007年10月23日 星期二 09:11
应当不是你理解的那样。 JSP里include是一个执行结果,也就是说是一个网页编译好后的结果。 但有些网页可能需要带参数的,比如热门排行,你可能需要传一个显示前XX条记录作为参数。对于翻页,你需要传递页面编号。 被include的页面是可以被单独在浏览器中被访问的。 这么说吧,被include的东西是一个单独的页面请求。 include就是将这个页面的执行结果,插入到被include的地方。 被include的页面和父页面没有太多的逻辑关系(不存在变量共享什么的)。 在 07-10-23,limodou<limodou在gmail.com> 写道: > 如果jsp中也需要外部变量,如何传递.与django不一样吗?在django中,include的模板一样可以有变量和无变量.不管怎么样总得有个地方传变量吧.使用我写的catch > tag就可以传参数了.
2007年10月23日 星期二 09:56
On 10/23/07, vicalloy <zbirder在gmail.com> wrote: > 应当不是你理解的那样。 > JSP里include是一个执行结果,也就是说是一个网页编译好后的结果。 > 但有些网页可能需要带参数的,比如热门排行,你可能需要传一个显示前XX条记录作为参数。对于翻页,你需要传递页面编号。 > 被include的页面是可以被单独在浏览器中被访问的。 > > 这么说吧,被include的东西是一个单独的页面请求。 > include就是将这个页面的执行结果,插入到被include的地方。 > 被include的页面和父页面没有太多的逻辑关系(不存在变量共享什么的)。 > 如果是单独访问那是不行的,因为在django中模板不是一个可以直接访问的东西,在django中view才可以访问. -- I like python! UliPad <>: http://code.google.com/p/ulipad/ meide < >: http://code.google.com/p/meide/ My Blog: http://www.donews.net/limodou
2007年10月23日 星期二 10:08
恩,所以Django里include的时候在include模板的同时,还要在代码做相应的处理,将模板所需要的变量放进去。 无法实现被include页面逻辑的完全独立。 对于django来说,如果要做到和jsp include一样,就是将view给include。 在 07-10-23,limodou<limodou在gmail.com> 写道: > 如果是单独访问那是不行的,因为在django中模板不是一个可以直接访问的东西,在django中view才可以访问.
2007年10月23日 星期二 10:13
On 10/23/07, vicalloy <zbirder在gmail.com> wrote: > 恩,所以Django里include的时候在include模板的同时,还要在代码做相应的处理,将模板所需要的变量放进去。 > 无法实现被include页面逻辑的完全独立。 > > 对于django来说,如果要做到和jsp include一样,就是将view给include。 > > 在 07-10-23,limodou<limodou在gmail.com> 写道: > > 如果是单独访问那是不行的,因为在django中模板不是一个可以直接访问的东西,在django中view才可以访问. 不过在django中不能简单地把view给include,因为view返回的是符合cgi格式的数据,不是简单的html.可能需要别的方法. -- I like python! UliPad <>: http://code.google.com/p/ulipad/ meide < >: http://code.google.com/p/meide/ My Blog: http://www.donews.net/limodou
2007年10月23日 星期二 10:19
ºÍjava²»Ò»ÑùµÄÊÇjava´«µÝµÄ²ÎÊý¶¼ÔÚ httprequestÀïÁË¡£ djangoµÄ²¿·Ö²ÎÊýÊÇÔÚurlÀïµÄ¡£ËùÒÔdjangoû·¨¾ÍÖ±½Ó¼òµ¥µÄ´«Ò»¸örequest¹ýÈ¥ On 10/23/07, limodou <limodou在gmail.com> wrote: > > On 10/23/07, vicalloy <zbirder在gmail.com> wrote: > > ¶÷£¬ËùÒÔDjangoÀïincludeµÄʱºòÔÚincludeÄ£°åµÄͬʱ£¬»¹ÒªÔÚ´úÂë×öÏàÓ¦µÄ´¦Àí£¬½«Ä£°åËùÐèÒªµÄ±äÁ¿·Å½øÈ¥¡£ > > ÎÞ·¨ÊµÏÖ±»includeÒ³ÃæÂß¼µÄÍêÈ«¶ÀÁ¢¡£ > > > > ¶ÔÓÚdjangoÀ´Ëµ£¬Èç¹ûÒª×öµ½ºÍjsp includeÒ»Ñù£¬¾ÍÊǽ«view¸øinclude¡£ > > > > ÔÚ 07-10-23£¬limodou<limodou在gmail.com> дµÀ£º > > > Èç¹ûÊǵ¥¶À·ÃÎÊÄÇÊDz»ÐеÄ,ÒòΪÔÚdjangoÖÐÄ£°å²»ÊÇÒ»¸ö¿ÉÒÔÖ±½Ó·ÃÎʵĶ«Î÷,ÔÚdjangoÖÐview²Å¿ÉÒÔ·ÃÎÊ. > > ²»¹ýÔÚdjangoÖв»Äܼòµ¥µØ°Ñview¸øinclude,ÒòΪview·µ»ØµÄÊÇ·ûºÏcgi¸ñʽµÄÊý¾Ý,²»ÊǼòµ¥µÄhtml.¿ÉÄÜÐèÒª±ðµÄ·½·¨. > > -- > I like python! > UliPad <>: http://code.google.com/p/ulipad/ > meide <>: http://code.google.com/p/meide/ > My Blog: http://www.donews.net/limodou > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20071023/0633cd50/attachment.htm
Zeuux © 2025
京ICP备05028076号