2014-02-10 68 views
0

我不知道何时何地可以调用我的方法的,我在模型类中定义从模型的Django调用方法

models.py

class MyClass(models.Model): 
    title = models.CharFiled(max_length=255, null=False) 
    body = models.TextFiled(max_length=255, null=False) 

    def body_formatted(self): 
     return "formatted string {0}".format(body) 

views.py 
def object(request): 
    object = MyClass.objects.all() 
    return locals() 

何时以及如何我可以叫BODY_FORMATTED方法修改我的领域?

回答

0

代码中有很多错误。除此之外,可以在模型的任何实例上调用模型类中定义的方法。实际上,Model是一个普通的python类。

您需要修改如下代码:

#models.py 
class MyClass(models.Model): 
    title = models.CharField(max_length=255, null=False) 
    body = models.TextField(max_length=255, null=False) 

    def body_formatted(self): 
     return "formatted string {0}".format(self.body) 

#views.py 
def myview(request): 
    # Get a model instance corresponding to the first DB row 
    obj = MyClass.objects.first() 
    body_formatted = obj.body_formatted() # Calling the model's method 
    return HttpResponse(body_formatted)