Django

Comment créer des vues Django?

Comment créer des vues Django?
Différents types de données de l'application Django, telles que le contenu HTML, les données XML, les données JSON, l'image, l'erreur 404, etc. sont transférés vers le modèle via la vue Django. Chaque vue est créée dans un but spécifique et associée à un modèle particulier. Les données de la vue peuvent être générées à partir de l'utilisateur via un formulaire HTML ou à partir de la base de données ou de la logique métier. Les vues Django peuvent être créées à l'aide d'une méthode de classe python ou d'une fonction python. Les vues basées sur les classes contiennent de nombreuses fonctionnalités par rapport aux vues basées sur les fonctions. Pour cela, la plupart des applications Django utilisent des vues basées sur des classes pour représenter les données de l'application Django. Les façons de créer la vue basée sur les fonctions et la vue basée sur les classes ont été expliquées dans ce tutoriel.

Conditions préalables:

Avant de mettre en pratique les exemples de ce didacticiel, vous devez effectuer les tâches suivantes :

  1. Installez la version Django 3+ sur Ubuntu 20+ (de préférence)
  2. Créer un projet Django
  3. Exécutez le serveur Django pour vérifier si le serveur fonctionne correctement ou non

Configurer une application Django :

UNE. Pour créer une application Django nommée viewapp, exécutez la commande suivante :

$ python3 gérer.py startapp viewapp

B. Pour créer l'utilisateur permettant d'accéder à la base de données Django, exécutez la commande suivante. Si vous avez déjà créé l'utilisateur, ignorez cette partie :

$ python3 gérer.py createsuperuser

C. Ajoutez le nom de l'application dans la partie INSTALLED_APP des paramètres.fichier py.

INSTALLED_APPS = [

'viewapp'
]

ré. Créer un dossier nommé modèles à l'intérieur de voir l'application dossier et définissez le des modèles emplacement de l'application dans le MODÈLES partie de la Les paramètres.py déposer.

MODÈLES = [

… .
'DIRS' : ['/home/fahmida/django_pro/viewapp/templates'],
… .
,
]

Créez une vue simple basée sur les fonctions :

Ouvrez le vues.py fichier de la voir l'application dossier et remplacez le contenu de ce fichier par le script suivant. indice() est utilisée dans le script pour créer le contenu HTML qui sera envoyé au navigateur à l'aide de la Réponse HTTP () méthode. Ici, la date et l'heure actuelles du système seront lues en utilisant l'aujourd'hui() fonction et la valeur de la date actuelle sera générée avant l'envoi au navigateur.

Vues.py

# Importez le module de date pour lire la date actuelle
à partir de datetime date d'importation
# Importez le module HttpResponse pour envoyer les données de la vue au modèle
de Django.http importer HttpResponse
# Définir une fonction pour créer une vue basée sur la fonction
def index (demande):
# Lire la date du jour
aujourd'hui = date.aujourd'hui()
# Définir des données statiques pour la vue
contenu = "

Bienvenue sur LinuxHint

"
contenu += "Aujourd'hui est " + aujourd'hui.strftime("%B") + " " + aujourd'hui.strftime("%d") + ", " + str(aujourd'hui.année) + "

"
# Envoyé le contenu au navigateur
renvoyer HttpResponse (contenu)

Modifier le contenu de la URL.py fichier avec le script suivant. Dans le scénario, le 'Bienvenue/' chemin est défini pour appeler le indice() fonction qui enverra le contenu HTML au fichier modèle.

URL.py

# Module de chemin d'importation
de Django.chemin d'importation des URL
# Importer le module de vue
à partir de viewapp importer des vues
# Appelez la méthode index pour afficher le contenu
urlpatterns = [
# Définir le chemin pour appeler la fonction index()
chemin('bienvenue/', vues.indice)
]

Exécutez l'URL suivante à partir du navigateur qui affichera la sortie suivante. Un texte de titre formaté et la valeur de la date actuelle sont affichés dans la sortie.

http://localhost:8000/bienvenue/

Créez une vue simple basée sur les classes :

Créer un vues2.py fichier dans le dossier viewapp et ajoutez le script suivant. Mon avis la classe est définie dans le script qui contient une méthode nommée obtenir(). Une variable de liste nommée données de liste est déclaré dans le script pour créer une liste de 10 nombres aléatoires. Les valeurs de la liste seront transmises au modèle via le Réponse HTTP () méthode lorsque cette vue est appelée. le hasard module a été utilisé dans le script pour générer un nombre entier aléatoire à chaque itération du pour boucle en utilisant le randint() une fonction.

vues2.py

# Importez le module HttpResponse pour envoyer les données de la vue au modèle
de Django.http importer HttpResponse
# Importer le module de vue
de Django.vues importer la vue
# Importer un module aléatoire
importer au hasard
# Définir la classe pour les vues basées sur les classes
classe MaVue (Vue):
def get(self, request):
# Déclarez la variable de liste
données de liste = []
# Ajouter le premier élément de la liste
données de liste.ajouter('

La liste de 10 nombres aléatoires est :

')
# Itérer la boucle 10 fois
pour n dans la plage (10) :
# Générer un nombre aléatoire entre 1 et 50
numéro_aléatoire = aléatoire.randint(1, 50)
# Ajouter le nombre aléatoire dans la liste
données de liste.ajouter (numéro_aléatoire)
# Ajouter un élément break dans la liste
données de liste.ajouter('
')
# Ajouter le dernier élément de la liste
données de liste.ajouter('
')
# Envoyer les valeurs de la liste au navigateur
renvoyer HttpResponse(listdata)

Modifier le contenu de la URL.py fichier avec le script suivant. Dans le script, le "numéro/" chemin est défini pour appeler le Mon avis.as_view() méthode qui enverra les données de la liste au fichier modèle.

URL.py

# Module de chemin d'importation
de Django.chemin d'importation des URL
# Importer le module de vue
à partir de viewapp importer des vues
# Importer la classe MyView
de viewapp.vues2 importer MaVue
# Appeler la méthode get de la classe MyView
urlpatterns = [
# Définir le chemin pour appeler la fonction index()
chemin('bienvenue/', vues.indice),
# Définir le chemin pour appeler MyView.méthode as_view()
chemin('numéro/', MaVue.as_view()),
]

Exécutez l'URL suivante à partir du navigateur qui affichera la sortie suivante. Les numéros de la sortie seront modifiés si la page est rafraîchie car chaque numéro de la liste sera généré aléatoirement.

http://localhost:8000/number/

Conclusion:

La sortie de l'application Web dépend du script du fichier de vue qui constitue une partie importante de toute application Web. Les vues basées sur les fonctions sont principalement utilisées dans la première version de l'application Django et maintenant les vues basées sur les classes sont utilisées dans la plupart des applications de Django. Les façons de créer les deux types de vues ont été montrées dans ce tutoriel pour aider les nouveaux utilisateurs de Django à créer leurs vues en fonction de leur application.

Tutoriel OpenTTD
OpenTTD est l'un des jeux de simulation d'entreprise les plus populaires. Dans ce jeu, vous devez créer une merveilleuse entreprise de transport. Cepe...
SuperTuxKart pour Linux
SuperTuxKart est un excellent titre conçu pour vous apporter l'expérience Mario Kart gratuitement sur votre système Linux. C'est assez stimulant et am...
Tutoriel Bataille pour Wesnoth
The Battle for Wesnoth est l'un des jeux de stratégie open source les plus populaires auxquels vous pouvez jouer en ce moment. Non seulement ce jeu es...