2009-12-17 57 views
2

我使用Turbogears 2.1生成Sprox表单并尝试在Mako模板中显示它。这里是我的代码:使用Mako Sprox形式与Turbogears,只使用Mako,显示纯文本

定义形式:

class NewUserForm(AddRecordForm): 
    __model__ = User 
newuserform = NewUserForm(DBSession) 

来分配形式,并调用模板控制器定义:

@expose('limelight.modules.users.templates.register') 
def register(self, **kw): 
    tmpl_context.register_form = newuserform 
    return dict(value=kw) 

和相关的模板代码:

${tmpl_context.register_form(value=value)} 

问题是HTML代码在页面上显示为纯文本,而不是呈现HTML。

回答

3

想通了。我必须通过'n'mako过滤器来传递变量以去除mako适用于生成的html的所有自动过滤器。所以:

$ {tmpl_context.register_form(value = value)| n}