如何在模板django中获取类模型的名称

时间:2017-09-28 20:03:48

标签: django django-models django-class-based-views

这个问题类似于这个问题(Model name of objects in django templates)但不一样。

我想知道如何获取Models类名(在这种情况下' Apple'),或者至少返回一个我可以传递的字符串。

Model.py

   django.db import models
   class Apple(models.Model):
      .....

apple.html

 <p>Sorry, no {{ ***Model class name**** }}</p>

浏览器中的一个例子:::&#34;  对不起,没有Apple &#34;

修改

一些额外条件:

  1. 如果没有从模型中创建对象怎么办,那么对不起,没有苹果&#39;
  2. 如何灵活处理,以便您可以对任何类型的水果使用相同的模板。

1 个答案:

答案 0 :(得分:4)

如果您要将对象传递给模板,并且您希望在模板中而不是在视图中执行此处理,则一种方法是创建以下template tag

@register.filter
def get_class(value):
    return value.__class__.__name__

并使用

获取名称

{{apple|get_class}}