【问题标题】:Unicode appnames in DjangoDjango 中的 Unicode 应用程序名
【发布时间】:2010-09-28 07:26:23
【问题描述】:

我住在挪威,当我制作 Django 应用程序时,我希望能够使用“æøå”之类的字符来命名我的应用程序,这些字符在 unicode 中可以正常工作,但是当我尝试在应用程序名称中使用这些字符时,或在字段显示文本中出现错误。

更好的是,我想按英文约定命名我的应用程序,但对应用程序使用“verbose_name”之类的名称,而不仅仅是模型。

那么是否可以为应用设置显示名称,而不仅仅是模型?以及如何在管理界面中使用 unicode 字符?

【问题讨论】:

  • 最近,我读到了这篇文章:habrahabr.ru/blogs/django/46087我想这就是你想要的,但是文章是用俄语写的。
  • 本文介绍如何在管理界面更改应用程序名称。

标签: django unicode character-encoding


【解决方案1】:

我强烈建议不要尝试在您的应用中使用 unicode。这源于该名称当前源自您的应用程序所在目录的名称这一事实。这应该在未来发生变化,允许应用程序的详细名称,但目前这是不可能的。

还要记住,在编程中,命名和文档的实际标准是英文。

【讨论】:

    【解决方案2】:

    这是来自http://softwaremaniacs.org/forum/django/716/ 的肮脏黑客(俄语)

    在 /django/contrib/admin/templates/index.html 更改

    <caption>{% blocktrans with app.name as name %}{{ name }}{% endblocktrans %}</caption>
    

    <caption>{% trans app.name %}</caption>
    

    在models.py中:

    class Meta:
        verbose_name = _("Module name")
    

    【讨论】:

    • 这不只是为了模型,而不是为了应用程序本身吗?还是我误解了? Meta 类,这是模型的子类,还是models.py 文件中的基类?当我将它作为基类尝试时,由于_(“模块名称”)中的“_”而出现错误有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 2012-08-24
    • 2013-10-28
    • 2021-10-07
    • 1970-01-01
    • 2017-11-17
    • 2012-07-09
    • 2015-05-31
    • 2017-03-13
    相关资源
    最近更新 更多