Django

Utilisation de la valeur par défaut de NULL dans le modèle Django

Utilisation de la valeur par défaut de NULL dans le modèle Django
Le modèle est l'une des parties importantes de l'application Django basée sur une base de données. Le modèle définit la structure de la base de données. Le type de données de la table de base de données et la manière d'insérer des données en fonction de différents attributs sont décrits dans le modèle. La validation des données peut être contrôlée en utilisant également le modèle. Chaque table de la base de données contient un nombre particulier de champs ou de colonnes. Le modèle définit le type de chaque champ de la table. L'attribut par défaut est utilisé dans le modèle pour définir une valeur par défaut pour une zone particulière si l'utilisateur de ce champ n'insère aucune donnée. La valeur par défaut d'un champ peut être Vide ou toute valeur spécifique. le nul et Vide les valeurs ne sont pas les mêmes. nul est utilisé pour définir que la valeur vide est autorisée ou non pour un champ particulier. Si la nul est réglé sur Faux, alors la chaîne vide ne sera pas autorisée dans le champ de type entier, mais la chaîne vide peut être affectée dans le champ de type chaîne. Si la nul est réglé sur Vrai, alors la valeur NULL sera donnée dans le champ de type entier à la place d'une chaîne vide. blank est principalement utilisé pour la validation du formulaire et ne vérifie pas le type de données du champ. La manière d'utiliser défaut et nul attributs dans le modèle Django a montré dans ce tutoriel.

Conditions préalables:

Avant de pratiquer le script de ce didacticiel, vous devez effectuer les tâches suivantes.

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

Configurez une application Django :

UNE. Exécutez la commande suivante pour créer une application Django nommée application de base de données.

$ python3 gérer.py startapp databaseapp

B. Exécutez la commande suivante pour créer l'utilisateur permettant d'accéder à la base de données Django. Si vous avez déjà terminé l'utilisateur, vous n'avez pas besoin d'exécuter la commande.

$ python3 gérer.py createsuperuser

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

INSTALLED_APPS = [

'application de validation'
]

ré. Créer un dossier nommé modèles à l'intérieur de application de base de données 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/databaseapp/templates'],
… .
,
]

Modèle de conception avec attributs par défaut et null :

Modifier le des modèles.py avec le script suivant pour créer une table nommée des produits qui contiendra quatre champs sans le champ id. Celles-ci noms, prix, date_fabrication et date_expiration. La valeur de la nul l'attribut est défini sur True pour tous les champs. La valeur de le blanc l'attribut est défini sur True pour tous les champs également. Cela signifie que l'utilisateur peut laisser les champs vides avant de soumettre le formulaire qui utilisera ce modèle. le défaut la valeur de l'attribut est définie pour le prix, la date de fabrication et la date d'expiration.

des modèles.py

# Module d'importation de modèles
de Django.modèles d'importation de base de données
# Créer une classe pour définir la structure de la table Teachers
classe Produit(modèles.Modèle):
nom = modèles.CharField(max_length=50, null=True, blank=True)
prix = modèles.IntegerField(null=True, default=", blank=True)
date_fabrication = modèles.DateField(null=True, default='0000-00-00', blank=True)
date_expiration = modèles.DateField(null=True, default='0000-00-00', blank=True)

Exécutez les commandes de migration suivantes pour créer les fichiers de migration nécessaires et la table de base de données de la base de données SQLite.

$ python3 gérer.py makemigrations databaseapp
$ python3 gérer.py migrer

Insertion de données à l'aide de Django Administration Dashboard :

Modifier le contenu de l'administrateur.py avec le script suivant pour enregistrer le modèle dans la base de données.

administrateur.py
Modifier le URL.py avec le script suivant pour définir le chemin d'ouverture du tableau de bord administratif Django.

URL.py

# Importer le module d'administration
de Django.administrateur d'importation de contribution
# Module de chemin d'importation
de Django.chemin d'importation des URL
# Définir le chemin pour le client et l'administrateur
urlpatterns = [
chemin('admin/', admin.placer.URL)
]

Maintenant, exécutez le serveur Django et accédez au tableau de bord administratif de Django en utilisant l'URL suivante.

http://localhist:8000/admin

ouvrez le formulaire de saisie de produit en cliquant Ajouter un produit. Si l'utilisateur soumet le formulaire sans insérer de données, la sortie suivante apparaîtra dans le navigateur. Ici, deux champs de date affichent des erreurs car la valeur par défaut du champ de date n'est pas dans un format valide.

La sortie suivante apparaîtra après l'ajout des données de date valides. Ici le le prix le champ est vide pour utiliser l'attribut par défaut.

Insertion de données à l'aide du modèle :

Le mode d'insertion des données dans le des produits tableau utilisant le formulaire HTML a été affiché dans cette section. Ici, les éléments de formulaire seront générés en fonction du modèle créé précédemment.

formes.py

# Module d'importation de formulaires
à partir des formulaires d'importation django
# Importer le modèle client
de dbapp.modèles d'importation Produit
# Définir la classe pour le formulaire client
classe ProductForm(formulaires.ModèleFormulaire) :
classe Meta :
modèle = Produit
champs = '__tous__'

Créez le fichier HTML nommé produit.html à l'intérieur de modèles dossier de l'application avec le script suivant. Les données du formulaire seront soumises lorsque l'utilisateur cliquera sur le Sauvegarder bouton.

produit.html

Formulaire d'inscription client



% csrf_token %
forme.as_p

Modifier le vues.py avec le script suivant pour insérer des données dans le des produits tableau après validation du formulaire. Ajouter un produit() la fonction est définie dans le script pour vérifier que le formulaire est soumis ou non, et si le formulaire est soumis, alors il vérifiera que les données du formulaire sont valides ou invalides. Si est valable() la fonction renvoie vrai, alors les données seront insérées dans le des produits tableau, et un message de réussite s'affichera dans le navigateur.

vues.py

# Importer le module HttpResponse
de Django.http.importation de réponse HttpResponse
# Importer le module de rendu
de Django.raccourcis import rendu
# Importer le formulaire de produit
de dbapp.formulaires importation ProductForm
# Définir la fonction pour ajouter une entrée de produit
def Ajouter un produit (demande) :
si demande.méthode == "POSTER":
form = ProductForm(demande.PUBLIER)
# Si les données du formulaire sont valides ou non
si forme.est valable():
essayer:
# Enregistrer les données du formulaire dans la base de données
forme.sauvegarder()
# Définir le message pour l'utilisateur
données = ['

Le produit ajouté.

']
# Renvoie la réponse
renvoyer HttpResponse (données)
sauf:
passe
autre:
# Définir l'objet du formulaire
formulaire = FormulaireProduit()
# Afficher le formulaire de saisie du produit
return render(demande, 'produit.html', 'formulaire' : formulaire)

Modifier le URL.py avec le script suivant pour définir le chemin d'appel de la fonction view.

URL.py

# Importer le module d'administration
de Django.administrateur d'importation de contribution
# Module de chemin d'importation
de Django.chemin d'importation des URL
# Vue d'importation
à partir des vues d'importation dbapp
# Définir le chemin pour le client et l'administrateur
urlpatterns = [
chemin(", vues.Ajouter un produit),
chemin('admin/', admin.placer.URL)
]

Maintenant, lancez le serveur Django et ouvrez l'URL de base dans le navigateur.

http://localhist:8000/

Le formulaire suivant apparaîtra.

Ce qui suit Erreur de valeur apparaîtra si l'utilisateur soumet le formulaire sans ajouter de données dans le formulaire. Ici le le prix field est un entier qui ne peut pas être la chaîne vide.

Si l'utilisateur entre les données valides comme le formulaire ci-dessous et appuie sur le Sauvegarder bouton, une nouvelle fiche produit sera insérée dans la base de données.

L'image suivante apparaîtra si vous ouvrez l'enregistrement nouvellement inséré à partir du tableau de bord Django.

Conclusion:

Un modèle a été conçu en utilisant des attributs null et default dans ce didacticiel. Ensuite, les façons d'insérer des données dans ces champs dans le back-end et le front-end ont été montrées ici pour aider le lecteur à connaître les utilisations des attributs par défaut et null dans la base de données Django.

Comment inverser le sens de défilement de la souris et des pavés tactiles dans Windows 10
Souris et Pavé tactiles rendent non seulement l'informatique facile, mais plus efficace et moins chronophage. Nous ne pouvons pas imaginer une vie san...
Comment changer la taille, la couleur et le schéma du pointeur et du curseur de la souris sous Windows 10
Le pointeur et le curseur de la souris dans Windows 10 sont des aspects très importants du système d'exploitation. Cela peut également être dit pour d...
Moteurs de jeux gratuits et open source pour le développement de jeux Linux
Cet article couvrira une liste de moteurs de jeux gratuits et open source qui peuvent être utilisés pour développer des jeux 2D et 3D sur Linux. Il ex...