gpt4 book ai didi

python - django classonlymethod 和 python classmethod 有什么区别?

转载 作者:IT老高 更新时间:2023-10-28 20:25:52 37 4
gpt4 key购买 nike

为什么 Django 需要引入装饰器 classonlymethod ?为什么不能复用python classmethod

最佳答案

最好的解释是the source code本身:

class classonlymethod(classmethod):
def __get__(self, instance, cls=None):
if instance is not None:
raise AttributeError("This method is available only on the class, not on instances.")
return super().__get__(instance, cls)

区别在于 classmethod可以在实例上调用,效果和在类上调用一样,但是classonlymethod只能在类上调用。

关于python - django classonlymethod 和 python classmethod 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8133312/

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