Skip to main content
 首页 » 编程设计

python之什么时候在django中调用模型方法

2024年10月24日37jillzhang

我正在尝试了解模型方法的工作原理。 以下面的例子:source here

from django.db import models 
 
class Person(models.Model): 
    first_name = models.CharField(max_length=50) 
    last_name = models.CharField(max_length=50) 
    birth_date = models.DateField() 
 
    def baby_boomer_status(self): 
        "Returns the person's baby-boomer status." 
        import datetime 
        if self.birth_date < datetime.date(1945, 8, 1): 
            return "Pre-boomer" 
        elif self.birth_date < datetime.date(1965, 1, 1): 
            return "Baby boomer" 
        else: 
            return "Post-boomer" 

什么时候调用 baby_boomer_status 方法?

我尝试用 print 替换 return 但从未调用该方法。

这是如何运作的?对不起,菜鸟问题。

请您参考如下方法:

如果你有一个 Person 对象

my_person = Person.objects.first() 

您可以调用模型方法:

my_person.baby_boomer_status() 

因为这返回一个字符串,你可以打印它的结果

print my_person.baby_boomer_status()