Spisie treści
Kiedy już mamy klasę modelu, musimy wypełnić ją różnymi polami, które będziemy chcieli w niej obsłużyć, ponieważ z pewnością mamy już naszą definicję tego, co będzie nosić w bazie danych, jak każde z nich powinno się zachowywać itp. Następnie musimy wyrazić to w naszej aplikacji.Aby zdefiniować pola mamy klasę Pola znalezione w modele, jest to ten, który pozwala nam wskazać typ pola, które będzie tym, które umieścimy w naszej klasie modelu.
Definicja pól
Manipulując modelami, Django stoi przed wyzwaniem odnalezienia i wykorzystania pól zdefiniowanych we wspomnianych modelach, w tym celu, gdy tworzony jest model i dodawane są do niego różne pola, przechowywany jest zapis lub ślad kolejności ich tworzenia, dzięki konto tworzenia atrybutów.
Raz Django identyfikuje pola, są one przechowywane na liście w atrybucie pola który należy do atrybutu _bramka wygenerowanej klasy modelu.
Dzięki wyżej opisanemu Django Możesz iterować po wymienionej liście, aby móc uzyskać informacje, których potrzebujesz z różnych pól, z tymi informacjami. Django możesz tworzyć formularze i różne wyniki, których wymagają szablony.
Zobaczmy następujący kod, który pozwala nam iterować i uzyskiwać wszystkie pola różnych modeli projektu bez konieczności określania konkretnego modelu:
from django.utils.text import capfirst def get_values (instance): for field in instance._meta.fields: name = capfirst (field.verbose_name) value = getattr (instance, field.name) print ('% s:% s' % (nazwa, wartość))
Jak widać, używamy klasy _bramka w ramach którego już wiemy, że przechowywana jest lista pól zdefiniowanych w atrybucie pola.
Klucze podstawowe
Jedną kwestią, z którą musimy się zmierzyć, jest klucz podstawowy, ponieważ wiemy, że te modele są reprezentacjami struktur, które znajdują się w naszej bazie danych, ponieważ każdy rekord musi być unikalny, musimy zdefiniować klucz główny, czyli kod lub unikalny identyfikator że damy Ci znać, jaki jest każdy rekord.
W programowaniu internetowym klucz podstawowy jest zwykle polem autonumerycznym, w którym z każdym wstawionym rekordem przechowywana jest liczba korelacyjna.
Aby sobie z tym poradzić Django generuje to pole automatycznie podczas generowania modelu i nie określania klucza podstawowego.
Stwórz model i zdobądź definicje
Ponieważ znamy teorię pól w modelu Django zobaczmy, jak tworzymy jedno z kilkoma polami, a następnie zobaczmy, jak uzyskać ich definicje.
Na poniższym obrazku mamy utworzony model Produktów:
Kiedy już mamy nasz model, zobaczmy, jak przebiega w Django, zwróć na to szczególną uwagę bez tworzenia klucza podstawowego Django tworzy pole ID, z którym będziemy identyfikować nasz rekord: