![](/img/trans.png)
[英]How can I use PySpark's Window function to model exponential decay?
[英]How can I use the Model's function?
我有一个TypeModel
模型,其中有一个:
class TypeModel(models.Model):
name = models.CharField(max_length=22)
type = models.CharField(max_length=12)
ch = models.CharField(max_length=44, null=True)
def print(self, name, type):
t = TypeModel.objects.create(name=name, type=type)
print('success - ' + t.name)
我想这样调用print
方法:
class TypeModelCreateAPIView(APIView):
permission_classes = [AllowAny]
def post(self, request):
TypeModel.print() # Can I invoke like this
return Response(status=HTTP_200_OK, data='')
我是否可以像这样调用模型的功能? 如果不是,如何实现模型的Class方法?
您可以使用staticmethod:
@staticmethod
def print(name, type):
t = TypeModel.objects.create(name=name, type=type)
print('success - ' + t.name)
是的,这可以通过staticmethod注释完成
class TypeModel(models.Model):
name = models.CharField(max_length=22)
type = models.CharField(max_length=12)
ch = models.CharField(max_length=44, null=True)
@staticmethod
def print(name, type):
t = TypeModel.objects.create(name=name, type=type)
print('success - ' + t.name)
请注意,静态方法没有隐式self
作为第一个参数。
当前print
被定义为实例方法。 您必须创建TypeModel
实例才能调用它。 喜欢:
model = TypeModel()
model.print()
或者您可以使用@staticmethod
装饰器:
@staticmethod
def print(name, type):
t = TypeModel.objects.create(name=name, type=type)
print('success - ' + t.name)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.