gpt4 book ai didi

python - Pyramid 遍历HTTP PUT到不存在的URI

转载 作者:太空宇宙 更新时间:2023-11-03 19:05:49 24 4
gpt4 key购买 nike

所以我有一个 Pyramid 遍历应用程序,我希望能够 PUT 到不存在的 URI。有没有办法在 View 配置中执行此操作?

例如我有这个

@view_defaults(context=models.Groups, renderer='json')
@view_config(request_method='GET')
class GroupsView(object):

def __call__(self):
''' This URI corresponds to GET /groups '''
pass

@view_config(request_method='PUT')
def put(self):
''' This URI should correspond to PUT /groups/doesnotexist '''
pass

当然,put 不起作用。上下文在 doesnotexist 上抛出关键错误,但在这种情况下如何让遍历器匹配 View ?

最佳答案

这听起来像是带有 Group 上下文和 UndefinedGroup 上下文的 Group 对象的单独类。大多数 View 都适用于 Group,但您可以使用特殊方法来响应 UndefinedGroup 对象的 PUT 请求。请注意,UndefinedGroup 不应是 Group 的子类。

@view_defaults(context=Group, renderer='json')
class GroupView(object):
def __init__(self, request):
self.request = request

@view_config(request_method='GET')
def get(self):
# return information about the group

@view_config(context=UndefinedGroup, request_method='PUT')
def put_new(self):
# create a Group from the UndefinedGroup

@view_config(request_method='PUT')
def put_overwrite(self):
# overwrite the old group with a new one

如果找不到 Group,您的遍历树将负责创建 UndefinedGroup 对象。

关于python - Pyramid 遍历HTTP PUT到不存在的URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14739993/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com