Jon*_*Ong 14 python sqlalchemy pyramid
我希望在一个Pyramid实例上有多个域和子域.但是,我似乎无法找到任何文件.最后一个问题涉及一个资料很少,没有例子的词汇表.你们有没有任何例子或者可以指导我更好的文档?
Mic*_*kel 24
Pyramid只是一个WSGI应用程序.这意味着它依赖于HTTP_HOST环境密钥(由Host头设置)来确定应用程序的主机.这都是相对的.金字塔对其所能接受的内容没有任何限制,因此世界就是你的牡蛎,你可以将其设置为限制内容到你想要的各个领域.这当然从您的网络服务器配置为提供给您的应用程序的主机开始.
假设您正在使用URL分派,您可能希望设计一些自定义路由谓词来检查request.host您想要的任何值.False从该谓词返回将阻止该路由将请求与该主机匹配.
这是一个很大的主题,因此如果您提供更多细节,它可能会有所帮助.例如,由于Pyramid是相对的,因此您可能希望从"example.com"生成以将某人重定向到"sub.example.com"的任何URL都需要通过预生成器完成.
def pregen(request, elements, kw):
kw['_app_url'] = 'http://sub.example.com'
return elements, kw
def req_sub(info, request):
return request.host.startswith('sub')
config.add_route('sub_only', '/',
custom_predicates=(req_sub,),
pregenerator=pregen)
config.add_route('foo', '/foo')
config.add_view(view, route_name-'foo')
def view(request):
# redirect the user to "http://sub.example.com", regardless of whether
# request.host is "example.com" or "sub.example.com"
return HTTPFound(request.route_url('sub_only'))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2774 次 |
| 最近记录: |