Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么不是';是否将根路径路由到我的视图?_Python_Python 3.x_Pyramid - Fatal编程技术网

Python 为什么不是';是否将根路径路由到我的视图?

Python 为什么不是';是否将根路径路由到我的视图?,python,python-3.x,pyramid,Python,Python 3.x,Pyramid,如何将根路径(即,/)路由到视图?这是我的简单设置: import sys import wsgiref.simple_server from pyramid.config import Configurator from pyramid.response import Response from pyramid.view import view_config def main(argv): # Create Application. with Configurator()

如何将根路径(即,
/
)路由到视图?这是我的简单设置:

import sys
import wsgiref.simple_server

from pyramid.config import Configurator
from pyramid.response import Response
from pyramid.view import view_config

def main(argv):
    # Create Application.
    with Configurator() as config:
        app = config.make_wsgi_app()

    # Serve HTTP requests.
    server = wsgiref.simple_server.make_server('localhost', 8080, app)
    server.serve_forever()
    return 0

@view_config(name='')
def page(request):
    return Response("Root")

if __name__ == '__main__':
    sys.exit(main(sys.argv))
当我请求
http://localhost:8080/
,我刚收到404的回复。从日志中:

127.0.0.1 - - [14/Apr/2018 09:14:50] "GET / HTTP/1.1" 404 153
答复机构:


404找不到
404找不到
找不到资源。


我正在运行Python 3.5和Pyramid 1.9.1。

看起来您忘记调用
config.scan()
,它添加了您用
@view\u config
注释的路由:

import sys
import wsgiref.simple_server

from pyramid.config import Configurator
from pyramid.response import Response
from pyramid.view import view_config

def main(argv):
    # Create Application.
    with Configurator() as config:
        config.scan()  # adds routes configured with the decorator
        app = config.make_wsgi_app()

    # Serve HTTP requests.
    server = wsgiref.simple_server.make_server('localhost', 8080, app)
    server.serve_forever()
    return 0

@view_config(name='')
def page(request):
    return Response("Root")


if __name__ == '__main__':
    sys.exit(main(sys.argv))
根据:

仅仅存在@view\u配置装饰器并不足以执行视图配置。decorator所做的只是用配置声明“注释”函数,而不是处理它们。要使Pyramid处理Pyramid.view.view\u配置声明,必须使用Pyramid.config.Configurator的扫描方法