擅长:python、mysql、java
<p>根据@kratenko的请求,您可以使用BeforeRender订阅服务器作为详细的<a href="http://docs.pylonsproject.org/projects/pyramid-cookbook/en/latest/templates/templates.html#using-a-beforerender-event-to-expose-a-mako-base-template" rel="nofollow">here</a></p>
<p>您可以在视图中添加以下订阅服务器</p>
<pre><code>@subscriber(BeforeRender)
def add_base_template(event):
request = event.get('request')
if request.user:
base = 'myapp:templates/logged_in_layout.mako'
event.update({'base': base})
else:
base = 'myapp:templates/layout.mako'
event.update({'base': base})
</code></pre>
<p>在你的mako模板中,这样称呼它:</p>
^{pr2}$