Heim > Artikel > Backend-Entwicklung > So erstellen Sie mit Python die Adressverwaltungsfunktion eines CMS-Systems
So erstellen Sie mit Python die Adressverwaltungsfunktion des CMS-Systems
Im Prozess der Website-Entwicklung ist die Adressverwaltungsfunktion eine häufige und notwendige Funktion. Durch die Adressverwaltung können Benutzer Adressinformationen hinzufügen, bearbeiten und löschen und so den Benutzern bequeme Liefer- und Zustelldienste bieten. Als prägnante, leistungsstarke und leicht zu erlernende Programmiersprache kann uns Python dabei helfen, diese Funktion sehr gut zu erreichen.
In diesem Artikel wird detailliert beschrieben, wie Sie mit Python die Adressverwaltungsfunktion des CMS-Systems erstellen und relevante Codebeispiele bereitstellen.
1. Datenmodelldesign
Zuerst müssen wir das Datenmodell für die Adressverwaltung entwerfen. In Python können Sie Django, ein hervorragendes Webframework, verwenden, um Datenbankoperationen zu vereinfachen.
Das Folgende ist ein einfaches Beispiel für den Entwurf eines Adressmodells:
from django.db import models class Address(models.Model): user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name="用户") receiver_name = models.CharField(max_length=30, verbose_name="收件人姓名") receiver_phone = models.CharField(max_length=20, verbose_name="收件人电话") province = models.CharField(max_length=30, verbose_name="省份") city = models.CharField(max_length=30, verbose_name="城市") district = models.CharField(max_length=30, verbose_name="区县") address = models.CharField(max_length=100, verbose_name="详细地址") is_default = models.BooleanField(default=False, verbose_name="是否默认") created_time = models.DateTimeField(auto_now_add=True, verbose_name="创建时间") updated_time = models.DateTimeField(auto_now=True, verbose_name="更新时间") class Meta: verbose_name = "地址" verbose_name_plural = "地址" def __str__(self): return self.address
Im obigen Beispiel haben wir eine Adressmodellklasse definiert, die den Namen des Empfängers, die Telefonnummer des Empfängers, die Provinz, die Stadt, den Bezirk und den Landkreis sowie Details und Felder wie die Adresse enthält , Standard, Erstellungszeit und Aktualisierungszeit.
2. Ansichten und Vorlagen für die Adressverwaltung
Als nächstes müssen wir Ansichten und Vorlagen für die Adressverwaltung erstellen, mit denen Benutzer Adressverwaltungsvorgänge im CMS-System durchführen können.
Die Adresslistenansicht wird verwendet, um die Adressliste des Benutzers anzuzeigen. In dieser Ansicht kann der Benutzer alle von ihm hinzugefügten Adressinformationen anzeigen.
from django.shortcuts import render from .models import Address def address_list(request): address_queryset = Address.objects.filter(user=request.user) return render(request, "address/list.html", {"address_list": address_queryset})
Im obigen Code importieren wir zunächst die Adressmodellklasse Address, die in der Vorlage verwendet werden muss, filtern dann die Adressliste des aktuellen Benutzers über die Filtermethode heraus und übergeben die Adressliste schließlich an die Listenvorlage .
Ansicht „Adresse hinzufügen“ wird für Benutzer verwendet, um neue Adressinformationen hinzuzufügen. Benutzer können relevante Informationen auf der Oberfläche eingeben und speichern.
from django.shortcuts import render, redirect from .models import Address from .forms import AddressForm def address_add(request): if request.method == "POST": form = AddressForm(request.POST) if form.is_valid(): address = form.save(commit=False) address.user = request.user address.save() return redirect("address_list") else: form = AddressForm() return render(request, "address/add.html", {"form": form})
Im obigen Code haben wir die Adressmodellklasse Address und die Adressformularklasse AddressForm importiert. Wenn der Benutzer das Formular über die POST-Methode sendet, überprüfen und speichern wir das Formular und springen dann zur Seite mit der Adressliste. Wenn es sich um die GET-Methode handelt, übergeben wir das Adressformular an die Seite mit der Adresse hinzugefügten Vorlage, damit der Benutzer es ausfüllen kann.
Die Adressbearbeitungsansicht wird verwendet, damit Benutzer vorhandene Adressinformationen bearbeiten können. Benutzer können relevante Informationen ändern und speichern.
from django.shortcuts import render, redirect, get_object_or_404 from .models import Address from .forms import AddressForm def address_edit(request, address_id): address = get_object_or_404(Address, id=address_id, user=request.user) if request.method == "POST": form = AddressForm(request.POST, instance=address) if form.is_valid(): form.save() return redirect("address_list") else: form = AddressForm(instance=address) return render(request, "address/edit.html", {"form": form})
Im obigen Code haben wir die Adressmodellklasse Address und die Adressformularklasse AddressForm importiert. Zuerst erhalten wir das zu bearbeitende Adressobjekt über die Methode get_object_or_404. Beim Absenden des Formulars übergeben wir dann das Adressobjekt an die Adressformularklasse und überprüfen und speichern schließlich das Formular.
Mit der Ansicht zum Löschen von Adressen können Benutzer vorhandene Adressinformationen löschen.
from django.shortcuts import get_object_or_404, redirect from .models import Address def address_delete(request, address_id): address = get_object_or_404(Address, id=address_id, user=request.user) address.delete() return redirect("address_list")
Im obigen Code erhalten wir das zu löschende Adressobjekt über die Methode get_object_or_404 und rufen dann die Löschmethode des Objekts auf, um den Löschvorgang auszuführen.
3. URL-Konfiguration der Adressverwaltung
Abschließend müssen wir das URL-Routing der Adressverwaltung konfigurieren. Gemäß der obigen Ansichtsfunktion müssen wir URLs für die Adressliste, das Hinzufügen von Adressen, das Bearbeiten von Adressen und das Löschen von Adressen konfigurieren.
from django.urls import path from . import views app_name = "address" urlpatterns = [ path("list/", views.address_list, name="address_list"), path("add/", views.address_add, name="address_add"), path("edit/<int:address_id>/", views.address_edit, name="address_edit"), path("delete/<int:address_id>/", views.address_delete, name="address_delete"), ]
Im obigen Code haben wir zuerst die Ansichtsfunktion der Adressverwaltung importiert und dann das URL-Routing über die Pfadmethode konfiguriert. Jede URL entspricht der entsprechenden Ansichtsfunktion und jede URL hat einen eindeutigen Namen.
Abschließend fügen wir das Adressverwaltungs-URL-Profil zur Haupt-URL-Konfiguration hinzu.
from django.urls import include, path urlpatterns = [ // ... path("address/", include("address.urls", namespace="address")), // ... ]
4. Zusammenfassung
Durch die oben genannten Schritte haben wir Python erfolgreich zum Aufbau der Adressverwaltungsfunktion des CMS-Systems verwendet. Benutzer können alle hinzugefügten Adressinformationen über die Adresslistenansicht anzeigen und entsprechende Vorgänge über die Ansichten zum Hinzufügen, Bearbeiten und Löschen von Adressen ausführen.
Mit leistungsstarken Tools wie Python und Django können wir ganz einfach ein voll funktionsfähiges CMS-System erstellen, um Benutzern ein besseres Benutzererlebnis zu bieten. Ich hoffe, dass dieser Artikel Ihnen beim Erstellen von Adressverwaltungsfunktionen hilfreich sein wird, und ich hoffe auch, dass Sie weiterhin weitere Einsatzmöglichkeiten und Funktionen von Python kennenlernen und erkunden können.
Das obige ist der detaillierte Inhalt vonSo erstellen Sie mit Python die Adressverwaltungsfunktion eines CMS-Systems. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!