2014-11-17 10 views
6

Я создал 'frontend' приложение с помощью ./manage.py startproject frontendКак изменить имя приложения в администраторе Django?

Но по какой-то причине, я просто хочу, чтобы изменить название приложения в админке Django для отображения 'Your Home Page' вместо 'frontend'.

Как это сделать?

Update: Вот немного более подробно:

#settings.py 
INSTALLED_APPS = (
    'frontend', 
) 

и

#frontend/models.py 
class Newpage(models.Model): 
    #field here 
class Oldpage(models.Model): 
    #field here 
+0

возможно дубликат [? Можете ли вы дать Django приложение подробный имя для использования во админа] (http://stackoverflow.com/ вопросы/612372/can-you-give-a-django-app-a-verbose-name-for-use-all-the-admin) – bjunix

ответ

1

1.Try добавить app_label к вашей модели, которая будет зарегистрирована в Admin.

class MyModel(models.Model): 
     pass 
    class Meta: 
     app_label = 'My APP name' 

UPDATE: 2. Действия переименовать приложение (папки):

  • переименуйте папку, которая находится в корневом каталоге проекта
  • Изменить любые ссылки на приложение в их зависимости, т.е. просмотры приложения, файлы urls.py и settings.py.
  • Редактирование таблицы базы данных django_content_type с помощью следующей команды: UPDATE SET django_content_type app_label = «» WHERE app_label = «»
  • Кроме того, если у вас есть модели, вам придется переименовать таблицы модели. Для postgres используйте ALTER TABLE _modelName RENAME TO _modelName. Для переименования моделей вам необходимо изменить django_content_type.name Примечание: Если ваш метафайл класса models.py имеет имя приложения, обязательно переименуйте его тоже.
+0

Это не работает –

+0

@ZenMaster Не могли бы вы поделиться с вами models.py? – wolendranh

+0

Мне нужно изменить 'frontend' не модель –

5

Да, вы можете сделать это просто

в вашем apps.py файл из папки приложения измените атрибут verbose_name из вашего конфигурационного класса. Например:

from django.apps import AppConfig 


class FrontendConfig(AppConfig): 
    name = 'frontend' 
    verbose_name = "Your Home Page" 

Я проверить это и работает в Django 1.10

Смежные вопросы