gpt4 book ai didi

python - 这是一个好的 python 设计吗?

转载 作者:行者123 更新时间:2023-11-28 20:51:43 24 4
gpt4 key购买 nike

我正在使用 django 并且我编写了这个装饰器来删除我为 ajax View 找到的一些重复代码,我想知道你的意见(太基本,糟糕的设计,试试这个,好的,等等)。

def ajax_only(func):
def _ajax_only(request,*args,**kwargs):
if not request.is_ajax():
return HttpResponse('<p>Ajax not supported.</p>')
else:
return func(request,*args,**kwargs)
return _ajax_only

最佳答案

我在这里唯一的其他提示是建议使用 functools.wraps 装饰器 - 它允许装饰函数保留一些属性(例如函数名称),这使得它更容易调试 - 上面的代码如下:

from functools import wraps
def ajax_only(func):
@wraps(func)
def _ajax_only(request,*args,**kwargs):
if not request.is_ajax():
return HttpResponse('<p>Ajax not supported.</p>')
else:
return func(request,*args,**kwargs)
return _ajax_only

关于python - 这是一个好的 python 设计吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8867389/

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