Wenn es viele Tabellen gibt, ist es schwierig, in admin.py zu schreiben. Ich möchte, dass du es automatisch machst.
⇣
Sie können den Befehl admin_generator
in der Bibliothek django-extensions
verwenden, um dies automatisch zu tun.
Es macht einen guten Job nach dem Inhalt von models.py.
django-extensions
erweitert die Funktionalität von manage.py
und es gibt viele andere Befehle.
Installieren
$ pip install django-extensions
Fügen Sie einfach zu settings.py hinzu
pj_name/settings.py
.
.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_extensions', # <-Nachtrag
]
.
.
Überschreiben Sie das Ausgabeergebnis in admin.py.
$ APP
ist der Name der Anwendung, die von $ python manage.py startapp xxx
erstellt wurde.
$ python manage.py admin_generator $APP > $APP/admin.py
Zum Beispiel diese Klasse
models.py
...
class Users(models.Model):
user_name = models.CharField(max_length=255)
last_name = models.CharField(max_length=255)
first_name = models.CharField(max_length=255)
email = models.CharField(max_length=255)
created_at = models.DateTimeField()
updated_at = models.DateTimeField()
del_flg = models.IntegerField()
class Meta:
managed = False
db_table = 'users'
...
So was
admin.py
...
@admin.register(Users)
class UsersAdmin(admin.ModelAdmin):
list_display = (
'id',
'user_name',
'last_name',
'first_name',
'email',
'created_at',
'updated_at',
'del_flg',
)
list_filter = ('created_at', 'updated_at')
date_hierarchy = 'created_at'
...
$ python manage.py createsuperuser
Username (leave blank to use 'anata_no_home_dir'): <-Jeder Name
Email address: <-Beliebige E-Mail-Adresse
Password: <-Passwort
Password (again): <-nochmal
Superuser created successfully.
Starten Sie den lokalen Server
$ python manage.py runserver
Zugang hier http://127.0.0.1:8000/admin/
Es ist in Ordnung, wenn die Login-> Tabelle mit den zuvor erstellten Benutzerinformationen angezeigt wird.
Vielen Dank für das Lesen bis zum Ende.
Recommended Posts