【问题标题】:How to have unicode characters in Django model choices?如何在 Django 模型选择中使用 unicode 字符?
【发布时间】:2015-07-11 17:40:50
【问题描述】:

我正在尝试在字段选择中使用特殊字符。我有以下代码:

CHOICES = (('1', 'b'),
                ('2', 'p'),
                ('3', 'm'),
                ...
                ('11', 'ɾ'),
                ...)
field = models.CharField(choices=CHOICES, max_length=10, null=True, blank=True)

但是,当 Django 呈现该字段的选择列表时,我得到的是:

<option value="11">&amp;#638;</option>

我尝试手动打印特殊字符并且它有效。但出于某种原因,Django 正在将 &amp;amp; 转换为 &amp;amp;

【问题讨论】:

    标签: python django unicode


    【解决方案1】:

    使用 Python Unicode 对象作为标签:

    CHOICES = (('1', 'b'),
                    ('2', 'p'),
                    ('3', 'm'),
                    ...
                    ('11', u'\u027e'),
                    ...)
    

    Django 会在渲染时对字符进行编码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-15
      • 1970-01-01
      • 2021-08-21
      • 2016-02-25
      • 2021-10-21
      • 2017-06-07
      相关资源
      最近更新 更多