Maison  >  Article  >  développement back-end  >  Comment utiliser Python pour créer la fonction de gestion des adresses du système CMS

Comment utiliser Python pour créer la fonction de gestion des adresses du système CMS

PHPz
PHPzoriginal
2023-08-26 20:45:32943parcourir

Comment utiliser Python pour créer la fonction de gestion des adresses du système CMS

Comment utiliser Python pour créer la fonction de gestion des adresses du système CMS

Dans le processus de développement d'un site Web, la fonction de gestion des adresses est une fonction courante et nécessaire. Grâce à la gestion des adresses, les utilisateurs peuvent ajouter, modifier et supprimer des informations d'adresse, offrant ainsi aux utilisateurs des services de livraison et de livraison pratiques. En tant que langage de programmation concis, puissant et facile à apprendre, Python peut très bien nous aider à réaliser cette fonction.

Cet article présentera en détail comment utiliser Python pour créer la fonction de gestion des adresses du système CMS et fournira des exemples de code pertinents.

1. Conception du modèle de données

Tout d'abord, nous devons concevoir le modèle de données pour la gestion des adresses. En Python, vous pouvez utiliser Django, un excellent framework Web, pour simplifier les opérations de base de données.

Ce qui suit est un exemple simple de conception de modèle d'adresse :

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

Dans l'exemple ci-dessus, nous avons défini une classe de modèle d'adresse, qui contient le nom du destinataire, son numéro de téléphone, la province, la ville, le district et le comté, des détails sur des champs tels que l'adresse. , par défaut, heure de création et heure de mise à jour.

2. Vues et modèles de gestion des adresses

Ensuite, nous devons créer des vues et des modèles de gestion des adresses pour que les utilisateurs puissent effectuer des opérations de gestion des adresses dans le système CMS.

  1. Vue de la liste d'adresses

La vue de la liste d'adresses est utilisée pour afficher la liste d'adresses de l'utilisateur. Grâce à cette vue, l'utilisateur peut voir toutes les informations d'adresse qu'il a ajoutées.

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})

Dans le code ci-dessus, nous importons d'abord la classe de modèle d'adresse Adresse qui doit être utilisée dans le modèle, puis filtrons la liste d'adresses de l'utilisateur actuel via la méthode de filtrage, et enfin transmettons la liste d'adresses au modèle de liste .

  1. Address Add View

Address Add View est utilisé par les utilisateurs pour ajouter de nouvelles informations d'adresse. Les utilisateurs peuvent saisir des informations pertinentes sur l'interface et les enregistrer.

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})

Dans le code ci-dessus, nous avons importé la classe de modèle d'adresse Address et la classe de formulaire d'adresse AddressForm. Lorsque l'utilisateur soumet le formulaire via la méthode POST, nous vérifierons et enregistrerons le formulaire, puis passerons à la page de liste d'adresses. S'il s'agit de la méthode GET, nous transmettrons le formulaire d'adresse à la page de modèle d'adresse ajoutée pour que l'utilisateur puisse le remplir.

  1. Vue de modification d'adresse

La vue de modification d'adresse permet aux utilisateurs de modifier les informations d'adresse existantes. Les utilisateurs peuvent modifier les informations pertinentes et les enregistrer.

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})

Dans le code ci-dessus, nous avons importé la classe de modèle d'adresse Address et la classe de formulaire d'adresse AddressForm. Tout d'abord, nous obtenons l'objet d'adresse à modifier via la méthode get_object_or_404. Ensuite, lors de la soumission du formulaire, nous transmettrons l'objet d'adresse à la classe du formulaire d'adresse, et enfin vérifierons et enregistrerons le formulaire.

  1. Vue de suppression d'adresse

La vue de suppression d'adresse est utilisée par les utilisateurs pour supprimer les informations d'adresse existantes.

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")

Dans le code ci-dessus, nous obtenons l'objet adresse à supprimer via la méthode get_object_or_404, puis appelons la méthode delete de l'objet pour effectuer l'opération de suppression.

3. Configuration des URL de gestion des adresses

Enfin, nous devons configurer le routage des URL de la gestion des adresses. Selon la fonction d'affichage ci-dessus, nous devons configurer les URL pour la liste d'adresses, l'ajout d'adresses, la modification d'adresses et la suppression d'adresses.

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"),
]

Dans le code ci-dessus, nous avons d'abord importé la fonction d'affichage de la gestion des adresses, puis configuré le routage des URL via la méthode path. Chaque URL correspond à la fonction d'affichage correspondante, et chaque URL a un nom unique.

Enfin, nous ajoutons le fichier de configuration de l'URL de gestion des adresses à la configuration de l'URL principale.

from django.urls import include, path

urlpatterns = [
    // ...
    path("address/", include("address.urls", namespace="address")),
    // ...
]

4. Résumé

Grâce aux étapes ci-dessus, nous avons utilisé avec succès Python pour créer la fonction de gestion des adresses du système CMS. Les utilisateurs peuvent afficher toutes les informations d'adresse ajoutées via la vue de liste d'adresses et effectuer les opérations correspondantes via les vues d'ajout, de modification et de suppression d'adresses.

En utilisant des outils puissants comme Python et Django, nous pouvons facilement créer un système CMS entièrement fonctionnel pour offrir aux utilisateurs une meilleure expérience utilisateur. J'espère que cet article vous sera utile pour créer des fonctions de gestion d'adresses, et j'espère également que vous pourrez continuer à apprendre et à explorer davantage d'utilisations et de fonctions de Python.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn