2015-07-20 27 views
0

我正在学习金字塔的教程。在会议08我要创建一个模板(.PT文件)如下:如何创建一个在金字塔中使用的.pt文件

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <title>Quick Tutorial: ${name}</title> 
</head> 
<body> 
<h1>Hi ${name}</h1> 
</body> 
</html> 

使用记事本+ +,使这个文件......但它不是这个(.PT)扩展I'm。 所以从来就试图保存此文件的.html或.txt,当我运行此代码:

from pyramid.view import view_config 
# First view, available at http://localhost:6543/ 
@view_config(route_name='home', renderer='home.pt') 
def home(request): 
    return {'name': 'Home View'} 

# /howdy 
@view_config(route_name='hello', renderer='home.pt') 
def hello(request): 
    return {'name': 'Hello View'} 

系统返回“找不到文件” .... 我怎样才能将文件保存为.pt ???

感谢您的耐心......

+1

在Notepad ++之类的应用程序中,您应该只需键入“.pt”作为名称,它将忽略您在下面选择的任何扩展名。如果不是这样,你可以在你的操作系统中重命名它。 – mjohnsonengr

+0

这工作完美。 //有时显而易见的是最隐蔽的事情。 – Starter

回答

1

@ Vi3GameHkr提供一个正确的答案的问题(保存文件时,即只是手动更改扩展名)的注释。

还有,虽然另一种方式......

你可以保存HTML扩展名的文件,并与pyramid_chameleon渲染,然后副HTML模板。你会这样做,如下所示:

import pyramid_chameleon 

def main(global_config, **settings): 
    config = Configurator(settings=settings) 
    config.include('pyramid_chameleon') 
    config.add_renderer('.html', pyramid_chameleon.zpt.renderer_factory) 

注意pyramid_chameleon已经与它的关联text.render_factory txt文件(我不知道怎么说也是不同的zpt.render_factory)。

然后,您可以更改renderer='home.pt'renderer='home.html'

如果您正在使用pyramid_mako,你可以做以下(这是类似的,但pyramid_mako又增加了一个“快捷方式”功能);

def main(global_config, **settings): 
    config = Configurator(settings=settings) 
    config.include('pyramid_mako') 
    config.add_mako_renderer('.html') 

而pyramid_jinja2提供了相同的快捷方式;

def main(global_config, **settings): 
    config = Configurator(settings=settings) 
    config.include('pyramid_jinja2') 
    config.add_jinja2_renderer('.html')