Comment créer des vues Django?

Comment créer des vues Django?
Différents types de données d'application Django, tels que le contenu HTML, les données XML, les données JSON, l'image, 404 Erreur, etc. sont transférés sur le modèle via Django View. 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 le 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 de fonction Python. Les vues basées sur la classe contiennent de nombreuses fonctionnalités par rapport aux vues basées sur la fonction. Pour cela, la plupart des applications Django utilisent des vues basées sur la classe pour représenter les données de l'application Django. Les façons de créer la vue basée sur la fonction et la vue basée sur les classes ont été expliquées dans ce tutoriel.

Conditions préalables:

Avant de pratiquer les exemples de ce tutoriel, vous devez effectuer les tâches suivantes:

  1. Installez la version 3+ de Django 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:

UN. 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 pour accéder à la base de données Django, exécutez la commande suivante. Si vous avez créé l'utilisateur avant, sautez cette pièce:

$ python3 gérer.py créeuperuser

C. Ajouter le nom de l'application dans la partie installée_app des paramètres.fichier PY.

Installé_apps = [

'ViewApp'
]]

D. Créer un dossier nommé modèles à l'intérieur de ViewApp dossier et définissez le modèle Emplacement de l'application dans le Modèles partie de la paramètres.py déposer.

Modèles = [

… .
'DIRS': ['/ home / Fahmida / django_pro / ViewApp / Templates'],
… .
,
]]

Créer une vue simple basée sur la fonction:

Ouvrir le vues.py fichier à partir du ViewApp dossier et remplacez le contenu de ce fichier par le script suivant. indice() La fonction est utilisée dans le script pour créer le contenu HTML qui sera envoyé au navigateur à l'aide du HttpResponse () méthode. Ici, la date et l'heure actuelles du système seront lues en utilisant le Today () fonction et la valeur de date actuelle sera générée avant d'envoyer au navigateur.

Vues.py

# Importez le module de date pour lire la date actuelle
à partir de la date d'importation de DateTime
# Importez le module HTTPResponse pour envoyer des données de la vue à un modèle
De Django.HTTP Import httpResponse
# Définir la fonction pour créer une vue basée sur la fonction
index def (demande):
# Lisez la date actuelle
Aujourd'hui = date.aujourd'hui()
# Définissez des données statiques pour la vue
contenu = "

Bienvenue à Linuxhint

"
Contenu + = "aujourd'hui est" + aujourd'hui.strftime ("% b") + "" + aujourd'hui.strftime ("% d") + "," + str (aujourd'hui.année) + "

"
# A envoyé le contenu au navigateur
retourner httpResponse (contenu)

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

URL.py

# Module d'importation de chemin
De Django.Chemin d'importation des URL
# Module d'importation
à partir des vues d'importation ViewApp
# Méthode d'index d'appel pour afficher le contenu
urlpatterns = [
# Définir le chemin d'accès à l'appel index ()
PATH («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 date actuelle sont affichées dans la sortie.

http: // localhost: 8000 / bienvenue /

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

Créer un vues2.py fichier à l'intérieur du dossier ViewApp et ajouter 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 listData 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 HttpResponse () Méthode lorsque cette vue est appelée. le hasard Le module a été utilisé dans le script pour générer un numéro entier aléatoire dans chaque itération du pour boucle en utilisant le randint () fonction.

vues2.py

# Importez le module HTTPResponse pour envoyer des données de la vue à un modèle
De Django.HTTP Import httpResponse
# Module d'importation
De Django.vues Affiche la vue d'importation
# Importer un module aléatoire
Importer au hasard
# Définir la classe pour les vues basées sur les classes
Class MyView (View):
def get (self, demande):
# Déclarer la variable de liste
listData = []
# Ajouter le premier élément de la liste
listData.ajouter('

La liste de 10 nombres aléatoires est:

')
# Itérer la boucle pour 10 fois
pour n à portée (10):
# Générer un nombre aléatoire dans les 1 à 50
random_number = aléatoire.Randint (1, 50)
# Ajouter le nombre aléatoire dans la liste
listData.Ajouter (random_number)
# Ajouter un élément de pause dans la liste
listData.ajouter('
')
# Ajouter le dernier élément de la liste
listData.ajouter('')
# Envoyez les valeurs de liste au navigateur
retourner httpResponse (listData)

Modifier le contenu du URL.py fichier avec le script suivant. Dans le script, le «nombre/ »Le chemin est défini pour appeler le Mon avis.as_view () Méthode qui enverra les données de la liste au fichier de modèle.

URL.py

# Module d'importation de chemin
De Django.Chemin d'importation des URL
# Module d'importation
à partir des vues d'importation ViewApp
# Importer MyView Class
De ViewApp.Views2 Importer MyView
# Appelez la méthode Get de MyView Class
urlpatterns = [
# Définir le chemin d'accès à l'appel index ()
PATH («Bienvenue /», vues.indice),
# Définir le chemin pour appeler MyView.Méthode as_view ()
Path ('Number /', MyView.as_view ()),
]]

Exécutez l'URL suivante à partir du navigateur qui affichera la sortie suivante. Les nombres de la sortie seront modifiés si la page est actualisée car chaque nombre de la liste sera généré au hasard.

http: // localhost: 8000 / numéro /

Conclusion:

La sortie de l'application Web dépend du script du fichier de vue qui fait partie 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 désormais les EDV 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.