2014-11-17 10 views
6

habe ich 'frontend' Anwendung ./manage.py startproject frontendWie ändere ich den App-Namen in Django admin?

Aber aus irgendeinem Grund mit Ich möchte nur den Namen der Anwendung admin in der Django ändern 'Your Home Page' statt 'frontend' anzuzeigen.

Wie geht das?

Update: Hier ist die etwas ausführlicher:

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

und

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

möglich Duplikat [? Können Sie ein Django-Applikation einen ausführlichen Namen für den Einsatz im gesamten admin] (http://stackoverflow.com/ Fragen/612372/can-you-geben-a-django-app-ein-verbose-name-for-use-in-the-admin) – bjunix

Antwort

1

1.Try app_label zu Ihrem Modell hinzuzufügen, die in Admin registriert.

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

UPDATE: 2. Schritte app (Ordner) umbenennen:

  • den Ordner umbenennen, die alle Verweise auf Ihre App auf ihrer Abhängigkeiten
  • Veränderung in Ihrem Projekt Wurzel ist, dh die Ansichten der App, die Dateien urls.py und settings.py.
  • Bearbeiten Sie die Datenbanktabelle django_content_type mit dem folgenden Befehl: UPDATE django_content_type SET app_label = ‚‘ WHERE app_label = ‚‘
  • Auch wenn Sie Modelle haben, müssen Sie die Modell Tabellen umbenennen. Für Postgres verwenden Sie ALTER TABLE _modelName RENAME TO _modelName. Zum Umbenennen von Modellen müssen Sie django_content_type.name ändern. Hinweis: Wenn die Meta-Klasse von models.py app_name aufgelistet hat, müssen Sie diese auch umbenennen.
+0

Das funktioniert nicht –

+0

@ZenMaster Könnten Sie teilen Sie models.py? – wolendranh

+0

Ich muss das 'Frontend' ändern nicht das Modell –

5

Ja, Sie können es einfach

in Ihrer apps.py Datei von Ihrem App-Ordner Ändern Sie das Attribut verbose_name aus Ihrer Konfigurationsklasse. Zum Beispiel:

from django.apps import AppConfig 


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

ich es testen und arbeite in Django 1.10