7
我试图找到解决我的问题的方法。Django获取显示名称选项
models.py
class Article(models.Model):
title = models.CharField(max_length=100)
slug = models.SlugField()
description = models.TextField()
def archive_quality(self):
return self.archive_set.order_by('-quality').distinct().values_list('quality', flat=True)
class Archive(models.Model):
CHOICES_QUALITY = (
('1', 'HD YB'),
('2', 'HD BJ'),
('3', 'HD POQD'),
('4', 'HD ANBC'),
)
article = models.ForeignKey(Article)
quality = models.CharField(max_length=100, choices=CHOICES_QUALITY)
arhives.html
{% for article in articles %}
{{ article }}
{% for quality in article.archive_quality %}
{{ quality.get_quality_display }}#This is not working
{% endfor %}
{% endfor %}
更新 功能archive_quality是很重要的,因为它可以防止复发的模板对象。
Example:
article:
My article one
Archive:
quality: 1111222333 >> without the function
quality: 123 >> with function
您就可以完成models.py。你的forloop错过了模型的变量 – catherine
@catherine当然,只需添加完整的模型。 –
所有的选择都真的是“1”吗? – Koterpillar