---
title: "mako模板的动态继承"
url: "https://lerry.me/post/2012/08/mako-dynamic-inherit"
date: 2012-08-23T14:02:00.000Z
updated: 2026-09-02T16:47:45.481Z
tags:
  - "Python"
language: zh-CN
---

# mako模板的动态继承

今天工作时需要实现一个功能， 根据用户是否登录继承不同的模板，找了好久，终于找到了，直接上代码：

```python
<%inherit file="${'/sns/_base.html' if context['user_login'] else '/auth/root/_base.html'}"/>
```

其中 context 这个变量中包含有所有上下文变量，比如你在View里面传入一个变量‘user_login’,然后在模板中就可以根据是否登录选择不同的基模板了。
