Django 在模板中获取派生形式 CHOICES

标签 django django-templates

嗨,我有一个 Django 表单:

BAR_CHOICES = (
    ('1', 'Cheers'),
    ('2', 'The Blue Oyster'),
    ...
)

class ProjectInfoForm(forms.Form):
    foo = forms.ChoiceField(
        CHOICES = BAR_CHOICES,
    )
    ...

当然,当我将此数据保存到模型时,这些值将作为整数存储在数据库中。现在,当我从保存的数据中获取这些值时,它们是整数。获取与其关联的选择字符串的最佳方法是什么。我应该将 BAR_CHOICES 导入模板吗?

最佳答案

Django 提供了一种直接获取相关字符串的方法。看看here

更新:

例子:

BAR_CHOICES = (
    ('1', 'Cheers'),
    ('2', 'The Blue Oyster'),
    ...
)

class Project(models.Model):
   foo = models.PositiveIntegerField(choices=BAR_CHOICES)
   ...

在模板中,您可以简单地执行 {{project.get_foo_display}}

关于Django 在模板中获取派生形式 CHOICES,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13888305/

相关文章:

python - 使用 Django 运行 bash 脚本

xslt - 使用 xslt 构建 django 模板文件

django - "Last"标签不起作用

ajax - 在ajax的div.append中的id属性中添加变量

python - 如何在 Django 中的大型描述上设置 "see more"选项?

python - Django:用很少的字段实例初始化表单

python - 如何使用 Django 在一个查询中从多个表中进行选择?

django - 拦截我的 Django 应用程序中的每个请求

python - django 分页不适用于 django 过滤器

python - Django 表单如何清理文本输入以防止 SQL 注入(inject)、XSS 等?