我正在尝试了解模型方法的工作原理。 以下面的例子: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()
关于python - 什么时候在django中调用模型方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33307855/