Python Django:自定义函数值未显示

Python Django:自定义函数值未显示,python,django,django-models,django-views,django-custom-manager,Python,Django,Django Models,Django Views,Django Custom Manager,试图了解如何在Django中创建自定义函数。我有以下资料: 型号: class OptionManager(models.Manager): def test(self): test = "test" return test class Option(models.Model): value = models.CharField(max_length=200) objects = OptionManager() def __str

试图了解如何在Django中创建自定义函数。我有以下资料:

型号:

class OptionManager(models.Manager):
    def test(self):
        test = "test"
        return test

class Option(models.Model):
    value = models.CharField(max_length=200)
    objects = OptionManager()
    def __str__(self):
        return self.value
视图:

test.html

{{ o.test }}

我的页面是空白的,但它应该显示“test”。我做错了什么?

它不起作用的原因是,自定义方法不应该在manager上,而应该在模型本身上

class Option(models.Model):
    value = models.CharField(max_length=200)
    objects = OptionManager()
    def __str__(self):
        return self.value

    def test(self):
        test = "test"
        return test
现在,对于你想要做的事情,它应该是

{{ o.objects.test }}
请注意,这是自定义方法的错误用法。管理器通常用于自定义筛选选项

阅读更多关于

{{ o.objects.test }}