2009-12-17 51 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}