我有一个外部软件包,该软件包与我的金字塔项目一起安装在venv
中。我想在视图中扩展配置。 client.include.my_pack
具有添加路由器的功能:
def includeme(config):
config.add_route('my_url_view', url)
此软件包应在多个项目中使用,我只想在项目中的一个地方进行连接。
我尝试连接它:
from pyramid.view import view_config
from pyramid.config import Configurator
config = Configurator()
config.include('client.include.my_pack')
config.scan()
@view_config(route_name='my_url_view', request_method='POST', renderer='json')
def home(request):
pack = request.validated['expected']
return pack
但是此代码引发异常:
pyramid.exceptions.ConfigurationExecutionError: <class 'pyramid.exceptions.ConfigurationError'>: No route named expected found for view registration.
如何在显示而不是__init __.py项目文件中添加路由?
答案 0 :(得分:0)
例外是“未找到预期用于视图注册的命名路由”。您的示例讨论的是名为“ my_url_view”而不是“ expected”的路由。我怀疑您还有另一个视图引用了未定义的路由?我看不到您粘贴的代码有什么问题。