AttributeError:'Bottle'对象没有属性'template'

时间:2013-09-21 03:20:14

标签: mongodb python-2.7 pymongo bottle

示例一

请考虑以下事项:

import bottle
import pymongo

application = bottle.Bottle()
@application.route('/')

def index():

    cursor = [ mongodb query here ]

    return application.template('page1',{'dbresult':cursor['content']})

假设MongoDB查询正确,并且应用程序正确调用contentcursor并将其传递给格式正确的模板。

我在日志中遇到的错误与能够使用template()方法有关,例如:

AttributeError: 'Bottle' object has no attribute 'template'

示例二

如果我更改了相应的作业并致电:

application = bottle
application.template

错误是:

TypeError: 'module' object is not callable

示例三

如果我更改了相应的作业并致电:

application = bottle
@application.route('/')
@application.view('page1.tpl')

return {'dbresult':cursor['content']}

错误是:

TypeError: 'module' object is not callable

问题

template()方法用于使Example One正常工作的正确调用是什么?

2 个答案:

答案 0 :(得分:1)

让“示例一”工作:

return bottle.template('page1',{'dbresult':cursor['content']})

template()位于bottle模块中;只需将其引用为bottle.template(...)

答案 1 :(得分:1)

bottle.template()不是bottle.Bottle()应用程序对象的方法。它是bottle模块中的一个函数。