Django – Definition von Feldern

Sobald wir eine Modellklasse haben, müssen wir sie mit den verschiedenen Feldern füllen, die wir in ihr verwalten möchten. Dafür haben wir sicherlich bereits unsere Definition, was in der Datenbank sein wird, wie sich die einzelnen Klassen verhalten sollen usw. Dann müssen wir dies in unserer Bewerbung zum Ausdruck bringen.

Um die Felder zu definieren, die wir in einer Fields- Klasse haben, die sich in Modellen befindet, können wir hier den Feldtyp angeben, den wir in unserer Modellklasse platzieren werden.

Definition von Feldern

Bei der Manipulation der Modelle steht Django vor der Herausforderung, die in diesen Modellen definierten Felder zu lokalisieren und zu verwenden. Wenn ein Modell erstellt und die verschiedenen Felder hinzugefügt werden, wird eine Aufzeichnung oder ein Trace der Reihenfolge, in der sie erstellt wurden, aufbewahrt. Dies ist dem Konto zur Attributerstellung zu verdanken.

Sobald Django die Felder identifiziert hat, werden sie in einer Liste im Attribut fields gespeichert, das zum Attribut _meta der generierten Modellklasse gehört.

Dank des zuvor Beschriebenen kann Django diese Liste durchlaufen, um die erforderlichen Informationen aus den verschiedenen Feldern zu erhalten. Mit diesen Informationen kann Django die Formulare und die verschiedenen Ausgaben erstellen, die für die Vorlagen erforderlich sind.

Sehen wir uns den folgenden Code an, mit dem wir alle Felder der verschiedenen Modelle eines Projekts durchlaufen und abrufen können, ohne ein bestimmtes Modell angeben zu müssen:

 aus django.utils.text importieren capfirst def get_values ​​(Instanz): für Feld in instance._meta.fields: name = capfirst (field.verbose_name) value = getattr (Instanz, field.name) print ('% s:% s'% (Name, Wert)) 

Wie wir sehen können, verwenden wir die Klasse _meta, in der wir bereits wissen, dass die Liste der im Attribut fields definierten Felder gespeichert ist.

See also  So erstellen Sie ein Responsive Layout

Primärschlüssel

Ein Punkt, mit dem wir uns befassen müssen, sind Primärschlüssel, da wir wissen, dass diese Modelle Darstellungen von Strukturen sind, die in unserer Datenbank gespeichert sind. Da jeder Datensatz eindeutig sein muss, müssen wir einen Primärschlüssel definieren, dh einen eindeutigen Code oder eine eindeutige Kennung Lassen Sie uns wissen, was jeder Datensatz ist.

Bei der Webprogrammierung ist der Primärschlüssel normalerweise ein automatisch numerisches Feld, in dem für jeden eingefügten Datensatz eine entsprechende Nummer gespeichert wird.

Aus diesem Grund generiert Django dieses Feld automatisch, wenn Sie ein Modell erstellen und keinen Primärschlüssel angeben.

Erstellen Sie ein Modell und rufen Sie die Definitionen ab

Da wir die Theorie hinter den Feldern in einem Django- Modell kennen, wollen wir uns ansehen, wie wir eines mit mehreren Feldern erstellen und dann sehen, wie wir ihre Definitionen erhalten.

Im folgenden Bild haben wir das Produktmodell erstellt:

django_defcampos.jpg

Jedes Feld ist als eine Instanz von Modellen definiert, die Felder und deren Attribute verwenden. Das von uns angegebene Feld sku ist beispielsweise models.CharField , dh ein Feld mit alphanumerischen Zeichen, in dem wir seine maximale Länge und den ausführlichen Namen angeben, der der Name ist Dies wird beim Drucken in der Anwendung angezeigt.

Wenn wir unser Modell haben, schauen wir uns an, wie Django sich fortbewegt. Achten Sie besonders darauf, dass Django ohne den Primärschlüssel das ID-Feld erstellt, mit dem wir unseren Datensatz identifizieren:

django_defcampos2.jpg

Damit beenden wir dieses Tutorial und haben das nötige Wissen, um zu wissen, was passiert, wenn wir Felder in einem Modell definieren und wie wir es tun sollen.

See also  So klonen Sie die Festplatte in Ubuntu Linux kostenlos

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *