Django – Admin-Erstellung und -Nutzung

1. Einführung in Django Admin

Django Admin ist ein Management-Backend-Tool, das mit dem Django-Framework geliefert wird. Es ermöglicht Entwicklern die einfache Verwaltung von Datenmodellen in Anwendungen über eine intuitive Weboberfläche. Admin bietet Modell-CRUD-Vorgänge (Erstellen, Lesen, Aktualisieren, Löschen) sowie Datenstapelverarbeitungs- und Suchfunktionen, was die tägliche Datenbankverwaltung erheblich vereinfacht. Es eignet sich nicht nur für die Entwicklungsphase, sondern auch sehr gut für die Datenpflege in der Produktionsumgebung.

2. Anpassung der Admin-Oberfläche

Django Admin bietet zahlreiche Anpassungsoptionen, sodass Entwickler die Benutzeroberfläche an die Projektanforderungen anpassen können.

  • Benutzerdefinierte Admin-Vorlagen : Sie können das Erscheinungsbild der Admin-Oberfläche ändern, indem Sie benutzerdefinierte Vorlagen erstellen.
    AD: Startseite | Eine effiziente Online-Plattform, die eine breite Palette von Thementools wie Änderungen abdeckt admin/base_site.html.
  • Benutzerdefiniertes Admin-CSS und JavaScript : settings.pyBenutzerdefinierte CSS- und JavaScript-Dateien können hinzugefügt werden, um den Stil und das Verhalten von Admin zu ändern.

2.2 Verwenden Sie die Admin-Klasse für die erweiterte Konfiguration

Django Admin verwendet die Admin-Klasse, um die Verwaltungsschnittstelle des Modells zu konfigurieren.

  • Admin-Klasse erstellen : admin.pyErstellen Sie in eine Admin-Klasse für jedes Modell, z. B. class MyModelAdmin(admin.ModelAdmin): ....
  • Admin-Klasse registrieren : Verwenden Sie admin.site.register(MyModel, MyModelAdmin)das Registrierungsmodell und die entsprechende Admin-Klasse.
  • Konfigurationsoptionen : In der Admin-Klasse können Sie verschiedene Optionen festlegen, z. B. list_displaydie Angabe der auf der Listenseite angezeigten Felder, search_fieldsdas Hinzufügen eines Suchfelds usw.

2.3 Verwaltung von Feldern und Feldsätzen

  • Feldverwaltungfields : Sie können das oder- Attribut in der Admin-Klasse verwenden fieldsets, um die Anzeige von Feldern auf der Bearbeitungsseite zu steuern.
  • Feldsätze : fieldsets
    Ermöglichen die Gruppierung von Feldern, um eine bessere Benutzererfahrung zu bieten, fieldsets = [('基本信息', {'fields': ['name', 'description']}), ...]z. B.

2.4 Optimierung von Listenseiten

  • Passen Sie die Listenansicht an : Verwenden Sie list_displaydie Felder, um die Anzeige der Listenseite zu steuern, list_filterFilter hinzuzufügen und orderingdie Standardsortierung festzulegen.
  • Aktionsschaltflächen hinzufügen : Verwenden Sie actionsAttribute, um Massenaktionen hinzuzufügen, z. B. Massenlöschen oder Als gelesen markieren.

2.5 Verwendung von Inline-Modellen

Inline-Modelle ermöglichen die direkte Bearbeitung des zugehörigen Modells auf der Bearbeitungsseite des übergeordneten Modells.

  • Definieren Sie ein Inline-Modell : Verwenden Sie inlines
    beispielsweise das Attribut in der Admin-Klasse class RelatedModelInline(admin.TabularInline): model = RelatedModel.
  • Inline-Modelle verwenden : Fügen Sie Inline-Modelle in der Admin-Klasse des übergeordneten Modells hinzu, z inlines = [RelatedModelInline].

3 Anpassung und Erweiterung des Admins

3.1 Admin-Vorlage anpassen

  • Benutzerdefinierte Admin-Vorlage : Mit Django Admin können Sie das Erscheinungsbild und das Verhalten der Admin-Oberfläche anpassen, einschließlich der Änderung des Erscheinungsbilds von Modelllisten, Formularen und Detailseiten.
  • Angepasster Admin-Stil : Sie können den Stil der Admin-Oberfläche anpassen, indem Sie die Admin-Vorlage überschreiben oder benutzerdefiniertes CSS verwenden.

3.2 Admin-Aktionen verwenden

  • Admin-Aktionen : Django Admin bietet die Funktion „Admin-Aktionen“, mit der Sie Objekte auf der Admin-Oberfläche stapelweise verarbeiten können, z. B. Batch-Löschung, Export und andere Vorgänge.
  • Benutzerdefinierte Admin-Aktionen : Sie können benutzerdefinierte Admin-Aktionen schreiben, um bestimmte Batch-Vorgänge auszuführen.

3.3 Integrieren Sie Anwendungen von Drittanbietern

  • Integration von Drittanbieteranwendungen : Django ermöglicht Ihnen die einfache Integration von Drittanbieteranwendungen. Durch die Installation und Konfiguration von Drittanbieteranwendungen können Sie die Funktionalität von Django erweitern.

3.4 Internationalisierung und Lokalisierung

  • Internationalisierung : Django bietet Internationalisierungsunterstützung, sodass Sie Ihre Anwendung in mehrere Sprachen lokalisieren können.
  • Lokalisierung : Mithilfe der integrierten Internationalisierungstools und Übersetzungsmechanismen von Django können Anwendungen problemlos in verschiedene Sprachen und Regionen lokalisiert werden.

3.5 Verwendung des Django REST Frameworks für die API-Entwicklung

  • Django REST Framework : DRF ist ein leistungsstarkes und flexibles Tool zum Erstellen von Web-APIs. Es bietet umfangreiche Funktionen, einschließlich Serialisierung, Ansichten, Authentifizierung, Berechtigungen usw.
  • API-Entwicklung : Mit DRF können Sie schnell eine API erstellen, die den RESTful-Designprinzipien entspricht und Datenschnittstellen für mobile Anwendungen, Front-End-Frameworks oder andere Dienste bereitstellt.

Beispiele für Codeanpassungen:

# Register your models here.
from django.db import models

from blog.models import Article

admin.site.site_header= "自动化测试平台"
admin.site.site_title= "自动化测试平台"

#@admin.register(Article)

class ArticleAdmin(admin.ModelAdmin):
    #编辑要显示的信息
    list_display = ["title","brief_content","publish_date"]
    #list_filter = ['title']
    #搜索的字段
    search_fields = ['title', 'brief_content']


admin.site.register(Article,ArticleAdmin)

Ich denke du magst

Origin blog.csdn.net/fish_study_csdn/article/details/142619913
Empfohlen
Rangfolge