django模板中显示自己的方法
Own method displayed in django template
我写了我的 / 示例方法,想在 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})
您不应在过滤器上而是在模型实例上调用此方法:
{% for obj in filter %}
{{ obj.my_method }}
{% endfor %}
我写了我的 / 示例方法,想在 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})
您不应在过滤器上而是在模型实例上调用此方法:
{% for obj in filter %}
{{ obj.my_method }}
{% endfor %}