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

标签 python django methods model

我正在尝试了解模型方法的工作原理。 以下面的例子: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/

相关文章:

python - 访问网站 : syntax error (admin. py,第 4 行时出现 Django 错误

python - 如何防止selenium中的css和img下载

javascript - 我如何根据用户提供的过滤值显示搜索结果?

Django 模板从数据库渲染并解释标签

django - 需要一个 Web 框架来生成可编辑、可排序、可过滤的 HTML 表格

Java 模式/匹配器 - 返回从一种方法到另一种方法的匹配

python - 在线程中运行类方法(python)

python - 将 argparse 与 Setuptools entry_points 一起使用

python - Django,来自 USStateField 的完整州名

java - java中两个对象之间的碰撞检测