web.py没有自己的模板引擎,需要引入别人的,他有一个类 web.contrib.template 里面做了些对接第三方模板的支持
比如要使用jinja模板
templates_path=os.path.join(app_root,'templates').replace("\\","/")
#配置模板引擎
render = render_jinja(
templates_path, # 设置模板路径.
encoding = 'utf-8', # 编码.
)
class home:
def GET(self):
return render.home({})
源代码:
class render_jinja:
"""Rendering interface to Jinja2 Templates
Example:
render= render_jinja('templates')
render.hello(name='jinja2')
"""
def __init__(self, *a, **kwargs):
extensions = kwargs.pop('extensions', [])
globals = kwargs.pop('globals', {})
from jinja2 import Environment,FileSystemLoader
self._lookup = Environment(loader=FileSystemLoader(*a, **kwargs), extensions=extensions)
self._lookup.globals.update(globals)
def __getattr__(self, name):
# Assuming all templates end with .html
path = name + '.html'
t = self._lookup.get_template(path)
return t.render
先初始化jinja,然后在 render.home的时候调用 __getattr__(self, name) 方法,在里面根据home名字去查找名字为home的模板文件,最后返回渲染
分享到:
相关推荐
首先,你需要访问Web.py的官方网站或者通过GitHub等代码托管平台找到web.py的源码压缩包,这里显示的文件名是"webpy-master",这意味着你已经下载了源码的主分支。下载后,将其解压缩到本地的一个目录,例如`C:\temp...
【Python web.py 框架详解】 web.py 是一个轻量级且强大的Python Web框架,它的设计理念是简洁、直观,并且易于上手。这个框架旨在让开发者能够快速地构建Web应用,同时保持代码的清晰性和可维护性。web.py 的核心...
web.py 是一个轻量级Python web框架,它简单而且功能强大。web.py是一个开源项目。该框架由美国作家、Reddit联合创始人、RSS规格合作创造者、著名计算机黑客Aaron Swartz开发。web.py目前已被很多家大型网站所使用。
【标题】"py2+web.py.rar" 指的是一个使用Python 2版本和Web.py框架构建的Web应用程序的压缩文件。Web.py是Python语言中的一个轻量级Web开发框架,它允许开发者快速地创建功能丰富的Web服务。在Windows Server 2008 ...
web.py 是一个轻量级Python web框架,它简单而且功能强大。web.py是一个开源项目。该框架由美国作家、Reddit联合创始人、RSS规格合作创造者、著名计算机黑客Aaron Swartz开发。web.py目前已被很多家大型网站所使用。...
1. **类型注解的添加**:为了与Python 3.7的类型系统兼容,`webpy-py3`可能在`web.py`的源码中添加了类型注解,以消除类型检查工具的警告或错误。 2. **语法更新**:可能更新了与新Python 3.7语法不兼容的部分,...
`web.py` 是一个针对Python编程语言设计的轻量级Web框架,它的核心设计理念是简洁和高效。作为一个小巧而灵活的框架,`web.py` 能够帮助开发者快速构建Web应用程序,同时保持代码的清晰性和可维护性。在本文中,我们...
web.py是一个轻量级的Python Web框架,设计简洁且易于上手。它提供了MVC(模型-视图-控制器)架构模式,让开发者能够快速地开发出Web应用。web.py的核心概念包括URL路由、请求处理、模板渲染等。 1. URL路由:web....
一个用web.py写的Hello World,主要是入门感受下pthon而已。 使用: 1、用终端CD到web.py,执行:python setup.py install,在Linux 等系统下,需要root 的权限,可以...2、CD到项目目录,执行python index.py,OK啦。
webpy实战 一个简单的web.py应用示例,包括一个首页和一个显示用户欢迎消息的页面: ```python import web urls = ( '/', 'Index', '/hello/(.*)', 'Hello' ) class Index: def GET(self): return "Welcome...
Web.py是一个基于Python的Web开发框架,为开发人员提供了一个简洁的API来构建Web应用程序。从提供的文件内容来看,这部分文档涵盖了几个关键的知识点,包括用户输入的访问、数据库的访问、模板的使用以及Web.py应用...
在本文中,我们将深入探讨如何使用Python的web.py框架开发HTTP服务器并解决跨域问题。跨域问题通常在Web开发中出现,尤其是当前端应用(如浏览器中的JavaScript)尝试从一个源向另一个源发送请求时。由于浏览器的...
web.py是一个轻量级的Python Web框架,它的设计哲学是简洁而直接,适合初学者和有经验的开发者。由于其开源性质,web.py可以在任何项目中自由使用,不受任何限制。虽然小巧,但web.py功能强大,能够处理复杂的Web...
webpy的设计理念力求精简(Keep it simple and powerful),源码很简短,只提供一个框架所必须的东西,不依赖大量的第三方模块,它没有URL路由、没有模板也没有数据库的访问。这样的优点是,框架给开发带来的限制少...
【标题】基于 Python web.py Redis 的博客系统是一个典型的 Web 应用开发实例,适用于计算机科学与技术专业的毕业生进行设计和实现。web.py 是一个轻量级的 Python Web 框架,而 Redis 是一个高性能的键值存储系统,...
`web.py` 是一个轻量级、简洁且灵活的 Python Web 开发框架,它提供了一种快速构建 Web 应用程序的方法。本教程旨在为初学者提供关于 web.py 的详细指导,涵盖从基础应用到高级特性的全方位介绍。 ## 基本应用 1. ...
标题中的"PIP20.0.2安装包 pip-20.0.2-py2.py3-none-any.whl"指的是Python的包管理工具pip的一个特定版本,即20.0.2。这个安装包是用wheel(whl)格式提供的,这是一种预编译的Python软件包格式,用于简化Python库的...
- 在安装Web.py或其他第三方库时,需要注意Python 2.x和Python 3.x之间的一些关键差异。例如,`print`语句在Python 2.x中是语句,在Python 3.x中则是函数。确保使用正确的语法以避免错误。 #### 六、总结 通过上述...