Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 如何从views.py调用models.py中带有参数的自定义方法_Django_Python 2.7_Django Models_Django Views_Django 1.9 - Fatal编程技术网

Django 如何从views.py调用models.py中带有参数的自定义方法

Django 如何从views.py调用models.py中带有参数的自定义方法,django,python-2.7,django-models,django-views,django-1.9,Django,Python 2.7,Django Models,Django Views,Django 1.9,我举了一个例子: class MyModel(models.Model): # Some fields... price = models.FloatField() def calculate(self, number): return self.price * number 在意见中: def whatever(request, any_number): m = MyModel.objects.all() c = m.calculat

我举了一个例子:

class MyModel(models.Model):
    # Some fields...
    price = models.FloatField()

    def calculate(self, number):
        return self.price * number
在意见中:

def whatever(request, any_number):
    m = MyModel.objects.all()
    c = m.calculate(any_number)

    # More code...
这是一个非常简单的例子,因为我想做一些类似的事情,那么我该怎么做呢


谢谢大家!

您需要在
for
循环中执行,因为
m
是一个对象数组:

for item in m:
     result = item.calculate(any_number)
    # do some stuff with the result

在不相关的注释中,您可能希望使用DecimalField而不是FloatField来保存价格,或者在自定义管理器中定义方法。