如何在Django admin中更改应用程序名称?

11 python django

'frontend'使用创建应用程序./manage.py startproject frontend

但出于某种原因,我只想更改Django管理员中的应用程序名称'Your Home Page'而不是显示'frontend'.

怎么做?

更新:这里有更多细节:

#settings.py
INSTALLED_APPS = (
    'frontend',
)
Run Code Online (Sandbox Code Playgroud)

#frontend/models.py
class Newpage(models.Model):
    #field here
class Oldpage(models.Model):
    #field here
Run Code Online (Sandbox Code Playgroud)

FAC*_*ode 15

是的,你可以做到这一点

在app文件夹中的apps.py文件中,更改config类中的verbose_name属性.例如:

from django.apps import AppConfig


class FrontendConfig(AppConfig):
    name = 'frontend'
    verbose_name = "Your Home Page"
Run Code Online (Sandbox Code Playgroud)

我测试它并在Django 1.10中工作

  • @FACode 它应该是 `default_app_config = "frontend.apps.FrontendConfig"` 或类似的东西 (3认同)

Eli*_*and 7

应用程序.py

from django.apps import AppConfig

class FrontendConfig(AppConfig):
    name = 'frontend'
    verbose_name = "Your Home Page"
Run Code Online (Sandbox Code Playgroud)

__初始化__.py

default_app_config = 'frontend.apps.FrontendConfig'
Run Code Online (Sandbox Code Playgroud)

https://docs.djangoproject.com/en/2.2/ref/applications/


Akh*_*N S 5

在stars / app.py中

from django.apps import AppConfig


class RequestsConfig(AppConfig):
    name = 'stars'
    verbose_name = "Star of India"
Run Code Online (Sandbox Code Playgroud)

在stars / init .py中

default_app_config = 'stars.apps.RequestsConfig'
Run Code Online (Sandbox Code Playgroud)

要使用自定义菜单方法访问应用名称,您可以尝试从

model._meta.app_config.verbose_name
Run Code Online (Sandbox Code Playgroud)

检查Django文档以获取参考https://docs.djangoproject.com/en/1.11/ref/applications/#for-application-users


Ale*_*aes 5

我迟到了,但只是为@FACode解释的解决方案添加了一个额外的步骤。
从官方文档

在前端/apps.py

from django.apps import AppConfig


class FrontendConfig(AppConfig):
    name = 'frontend'
    verbose_name = "Your Home Page"
Run Code Online (Sandbox Code Playgroud)

在 app/settings.py

    INSTALLED_APPS = [
        'frontend.apps.FrontendConfig',
        # ...
    ]
Run Code Online (Sandbox Code Playgroud)


wol*_*anh 4

1.尝试将app_label添加到将在Admin中注册的模型中。

class MyModel(models.Model):
        pass
    class Meta:
        app_label = 'My APP name'
Run Code Online (Sandbox Code Playgroud)

更新: 2.重命名应用程序(文件夹)的步骤:

  • 重命名项目根目录中的文件夹
  • 更改应用程序的依赖项中对应用程序的任何引用,即应用程序的视图、urls.py 和 settings.py 文件。
  • 使用以下命令编辑数据库表 django_content_type: UPDATE django_content_type SET app_label='' WHERE app_label=''
  • 此外,如果您有模型,则必须重命名模型表。对于 postgres,请使用 ALTER TABLE _modelName RENAME TO _modelName。对于重命名模型,您需要更改 django_content_type.name 注意:如果您的 models.py 的元类列出了 app_name,请确保也重命名它。