摘要:repoze.what.plugins.quickstart调用流程解析在使用repoze.what.plugins的时候曾碰到这样的情况:用户A已经登录,此时用户在用户A没有关闭浏览器的情况下(即session没有失效)再次登录,显示登录成功,但登录的用户还是A而不是B,究其原因,应该是cookie中的用户A的信息没有删除。怎样才能不显式调用logout url(如果调用logout会导致页面跳转)而实现清空上一用户信息的效果?为搞清楚这一问题,就有必要探究一下repoze.what.plugins.quickstart的调用次序。repoze.what.plugins.quickstart
阅读全文
随笔分类 - Pylons相关
主要包括pylons中所使用到的各项技术,涵盖Mako,SQLAlchemy,Repoze.what-pylons, Repoze.what-quickstart等
摘要:Mako是Pylons的默认采用的模板,很简洁,也很强大。对于初次接触Mako的朋友来说可能会觉得Mako的Namespace很奇特,熟悉Jsp的会觉得和Jsp等大不一一样,不过要是接触过Django,写过Django的template,用过{% block %}{% endblock %}操作的话,应该很快就能熟悉Mako的Namespace。但Mako中的Namespace和Django的block还是很很大的不同的。本文着重讲述一下Mako中的基本Namespace的操作。Mako中常用的Namespace有local、self、parent、next,其中:local:指向当前执行的t
阅读全文
摘要:pylons初探之开发环境搭建在众多的web framework中,pylons可以说是一个后起之秀,综合了之前各个框架的优点,所形成的一个非常灵活的框架,其模块化程度非常高,各个模块之间的耦合性较低,用户可以根据需要进行组装。如何安装pylons?对于pylons开发者来说,有三个主要的工具:1. Virtual Python environment2. easy_install program3. python package index可能很多开发者对于virtual python environment有疑问,觉得有点儿多此一举,但在实际开发中却是很有用的一个工具,这样一来,开发者就可
阅读全文
摘要:TypeError: render_body() got an unexpected keyword argument 'c'产生此异常的具体原因为在Mako template中错误定义如下函数 <%def name="body()">,因为body()在Mako中属于关键字,有特殊用途!将函数名字改成body以外的任意名字即可解决此问题。详情请参阅:http://pylonshq.com/tracebacks/3bec71e393ed03a4287dcaa554e5db65
阅读全文