擅长:python、mysql、java
<p>金字塔将把请求发送到通过<code>add_view</code>或<code>view_config</code>注册的视图。如果您想再次将其分派到您自己的代码中,请记住,从金字塔的角度来看,将使用在原始视图上定义的呈现器/权限。。。所以不要用那些。请求有效地进入了金字塔视图,然后你就有了自己的小框架来处理它。在</p>
<p>我建议考虑如何在金字塔视图的上下文中分派内容,例如,<code>pyramid_rpc</code>包会根据RPC请求主体中的内容(而不仅仅是URL)执行一些很酷的任务来分派到视图。请参阅<a href="https://github.com/Pylons/pyramid_rpc/blob/master/pyramid_rpc/jsonrpc.py#L216" rel="nofollow">add_jsonrpc_method</a>中的自定义谓词,以了解我在说什么。在</p>
<p>不管怎样,假设你还想做你自己的事情,你所要做的就是在金字塔中注册一个你想要的模式的视图。在</p>
<pre><code>config.add_route('my_framework', '/foo/{the_rest:.*}')
@view_config(route_name='my_framework')
def my_framework_view(request):
url = request.matchdict['the_rest']
# do your frameworky stuff here
if url == 'foo/bar':
return some_other_view(request)
return HTTPNotFound()
</code></pre>
<p>无论如何,应该清楚的是,这是一个框架之上的框架,在很多情况下可能是一种代码味道。在</p>