我在django模型中使用以下代码来格式化管理界面中的列:
def formatted_mu(self):
return "%.1f%%" % self.mu
formatted_mu.short_description = u'\u03BC'
出于某种原因,它不是在标题中显示μ,而是显示M.我知道这应该像我尝试过的那样工作''u3A3'我确实收到了Σ。
编码参考:
更新
我发现其他小写的希腊字母也与他们的资本同行一起转换。有什么方法可以避免这种情况吗?
答案 0 :(得分:3)
M是资本Mu。西格玛看起来与众不同,但资本 - 穆看起来像我们的M.
答案 1 :(得分:2)
Django将任何字段的第一个字母大写
答案 2 :(得分:1)
您可以通过在models.py中的模型定义的Meta类中设置verbose_model_plural
,并使用您想要的设置和空格作为第一个字符来避免大写模型名称。
,例如,
class SomeModel(models.Model):
class Meta:
verbose_name_plural = u' \u03BC'
EDIT1:我的初始解决方案不起作用,因为django总是将第一个字母大写为verbose_name_plural(尽管它不会自动将其他字母转换为小写,就像管理员通常对模型名称所做的那样。)但是,制作详细名称的第一个字母是空格,它有效。请注意,因为名称位于html表中(忽略第一个/最后一个字符之前的空格),所以详细模型名称中的空格不会被用户注意到。
EDIT2:或者避免大写字段名称(抱歉 - 没有仔细阅读问题)。
class AnAverageModel(models.Model):
mean = models.FloatField(u" \u03BC")