django模板中显示的自有方法

时间:2015-01-30 13:42:53

标签: python django methods django-templates

我编写了我的/ sample方法,并希望在django模板中显示它。 我正在尝试{{filter.my_method}}而没有给出任何东西。 使用方法和视图在我的模型下面。

我的模型和我的方法:

class MyModel(models.Model):
    user = models.ForeignKey(User, blank=True, null=True)
    name = models.CharField(max_length=255, blank=True, null=True)

    def __unicode__(self):
        return self.user

    def my_method(self):
        return self.name

我的观点

class Index(ListView):

    template_name = "index.html"
    context_object_name = 'users'

    def get(self, request):
        filter = Filter(request.GET, queryset=MyModel.objects.all())
        return render(request, self.template_name, {'filter': filter})

1 个答案:

答案 0 :(得分:2)

您应该不在过滤器上调用此方法,而是在模型实例上调用此方法:

{% for obj in filter %}
    {{ obj.my_method }}
{% endfor %}