1

当我想启动我的金字塔服务器时,它返回TopLevelLookupException: Can not locate template for uri错误。请解释一下问题出在哪里

from wsgiref.simple_server import make_server
from pyramid.config import Configurator
from pyramid.response import Response
from pyramid.view import view_config
import tweepy
import os

consumer_key=""
consumer_secret=""
access_key = ""
access_secret = "" 
here = os.path.dirname(os.path.abspath(__file__))

也许,问题出在这个“这里”的对象上。

def twitterfeed(request):
    auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
    auth.set_access_token(access_key, access_secret)
    api = tweepy.API(auth)
    statuses =  tweepy.Cursor(api.friends_timeline).items(20)
    data = Response('\n'.join([s.text.encode('utf8') for s in statuses]))
    print type(data)
    return {"data": data}


if __name__ == '__main__':
    settings = {}
    settings['reload_all'] = True
    settings['debug_all'] = True
    settings['mako.directories'] = os.path.join(here, 'templates')
    config = Configurator()
    config.add_view(twitterfeed, route_name='list', renderer='list.mako')
    config.add_route('list', '/')
    app = config.make_wsgi_app()
    server = make_server('0.0.0.0', 8000, app)
    server.serve_forever()
4

1 回答 1

2

感谢@swietyy,我的代码现在可以工作了

def twitterfeed(request):
   auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
   auth.set_access_token(access_key, access_secret)
   api = tweepy.API(auth)
   statuses =  tweepy.Cursor(api.friends_timeline).items(20)
   data = [s.text.encode('utf8') for s in statuses]
   return {"data": data}
#...
#...
#...
config = Configurator(settings=settings)
于 2013-01-29T19:49:59.270 回答