gpt4 book ai didi

django - 列出 django 模型的显示名称

转载 作者:行者123 更新时间:2023-12-04 06:56:27 24 4
gpt4 key购买 nike

我有一个对象:

POP_CULTURE_TYPES = (
('SG','Song'),
('MV', 'Movie'),
('GM', 'Game'),
('TV', 'TV'),
)

class Pop_Culture(models.Model):
name = models.CharField(max_length=30, unique=True)
type = models.CharField(max_length=2, choices = POP_CULTURE_TYPES, blank=True, null=True)

然后我有一个功能:
def choice_list(request, modelname, field_name):
mdlnm = get.model('mdb', modelname.lower())
mdlnm = mdlnm.objects.values_list(field_name, flat=True).distinct().order_by(field_name)
return render_to_response("choice_list.html", {
'model' : modelname,
'field' : field_name,
'field_list' : mdlnm })

这为我提供了在 render_to_response 中传递的“field_list”变量中数据库中所有“类型”条目的不同列表。但我不想要显示以下内容的列表:

SG

MV

我想要一个列表,显示:

歌曲

电影

如果我在模板中,我可以在单个对象的基础上执行此操作
object.get_type_display

但是如何将数据库中所有唯一“类型”条目的列表作为它们的全名输出到模板中?

我希望这个问题描述清楚。 . .

最佳答案

在您的choice_list() 结尾处这样的东西怎么样?

def choice_list(request, modelname, field_name):
# ...
pct = dict(POP_CULTURE_TYPES)
return [pct[key] for key in mdlnm]

或者在没有 dict() 调用的一行中:
    return [pct[1] for pct in POP_CULTURE_TYPES if pct in mdlnm]

不漂亮,但它会起作用,直到遇到更好的东西。

关于django - 列出 django 模型的显示名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2484390/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com