Как може да се използва HTML форма за вземане на данни от потребителя, четене на входните стойности и отпечатване на стойностите в браузъра с помощта на Django е показано в този урок.
Предпоставки:
Трябва да създадете проект на Django, преди да създадете формуляра на Django. За да създадете нов проект на Django и отидете в папката на проекта, изпълнете следните команди:
$ django-admin startproject django_pro$ cd django_pro
За да създадете необходимите файлове и да приложите миграции за проекта, изпълнете следната команда:
$ python3 управлява.py мигриратЗа да проверите дали сървърът на Django работи правилно или не, изпълнете следната команда:
$ python3 управлява.py runserverЗа да създадете formapp под django_pro проект, изпълнете следната команда:
$ python3 управлява.py startapp formappСъздаване на HTML формуляр с помощта на Django:
Отвори мнения.py файл, който е вътре formapp папка и модифицирайте нейното съдържание със следното съдържание. Следният скрипт ще провери дали формулярът е изпратен или не. Ако формулярът е изпратен, стойността на заявка.метод ще бъде POST и заявка.ПОСТ.получи () метод се използва за четене на подадените му стойности. The е валиден() функция ще провери дали данните на формуляра са валидни или не. Ако тази функция връща true, тогава в браузъра ще се отпечата съобщение за успех с валидни данни на потребителя, в противен случай ще се покаже съобщението за грешка, което се появява в конкретното поле на формуляра. Освен това, render () метод се използва за зареждане на формуляра в браузъра и HttpResponse () метод се използва за изпращане на отговора от сървъра до браузъра след изпращане на формуляра.
# Импортирайте необходимите модулиот django.преки пътища за импортиране
от formapp.форми за внос StudentForm
от django.http импортиране HttpResponse
def form_request (заявка):
# Проверете дали формулярът е изпратен или не
при поискване.метод == 'POST':
student = StudentForm (заявка.POST)
# Проверете дали данните на формуляра са валидни или не
ако студент.е валиден():
# Прочетете подадените стойности
име = заявка.ПОСТ.get ("име")
имейл = заявка.ПОСТ.get ("имейл")
потребителско име = заявка.ПОСТ.get ("потребителско име")
# Обединете стойностите
data = ['Вашата регистрация е завършена успешно.
',' Име: ', име,'
',' Имейл: ', имейл,'
',' Потребителско име: ', потребителско име]
# Върнете стойностите на формуляра като отговор
връщане HttpResponse (данни)
друго:
# Показване на html формата
student = StudentForm ()
връщане на рендер (заявка, "форма.html ", 'form': student)
Създайте форми.py вътре в formapp папка и добавете следното съдържание. Следният скрипт ще създаде форма от четири полета. The име полето е дефинирано, за да вземе данните за символите и може да бъде дълго 40 знака. The електронна поща полето е дефинирано да приема всеки валиден имейл адрес, като използва данните за символите и може да бъде с дължина 50 знака. The потребителско име полето е дефинирано, за да вземе данните за символите и може да бъде дълго 20 знака. The парола полето е дефинирано, за да вземе данните за символите и може да бъде минимум 10 символа и максимум 20 символа. The форми.Въвеждане на парола джаджа се използва за полето за парола, за да скрие съдържанието на полето за парола.
# Импортиране на модули за формуляриот форми за импортиране на django
# Създайте клас, за да дефинирате полетата на формуляра
клас StudentForm (форми.Форма):
име = форми.CharField (label = "Пълно име", max_length = 40)
имейл = формуляри.EmailField (label = "Email", max_length = 50)
потребителско име = форми.CharField (label = "Потребителско име", max_length = 20)
парола = форми.CharField (label = "Password", min_length = 10, max_length = 20, widget = форми.Въвеждане на парола)
Създайте папка с име шаблони вътре в formapp папка. Отидете на ШАБЛОНИ раздел на настройките.py файл и задайте местоположението на шаблон папка за DIRS Имот.
настройки.py
ШАБЛОНИ = ['DIRS': ['/ home / fahmida / django_pro / formapp / templates']
,
]
Създайте форма.html вътре в шаблон папка със следното съдържание.
% csrf_token% се използва в HTML скрипта за предотвратяване на CSRF (Cross-Site Request Forging) атаки. форма.as_p ще зареди формата Django, която е проектирана от форми.py файл. Когато Изпращане бутонът е натиснат, данните за формуляра ще бъдат изпратени на сървъра.
Отвори URL адреси.py от django_pro папка и модифицирайте съдържанието със следното съдържание.
Ето, 'регистрирам/' path се използва за зареждане на формуляра в браузъра.
# Импортирайте необходимите модулиот django.път за импортиране на URL адреси
от изгледи за импортиране на форма
# Метод на повикване за показване на формуляра
urlpatterns = [
път ('регистър /', изгледи.form_request)
]
Отворете всеки браузър и въведете следния URL, за да заредите формуляра за регистрация на потребителя в браузъра.
http: // localhost: 8000 / регистър
Следният изход ще се появи след стартиране на URL адреса. Проверката на празното поле, стойността на максималната дължина на имената, имейлите и полетата за парола, както и минималната и максималната стойност на дължината на полето за парола ще бъдат проверени след подаване на формуляра.
Следващият изход показва, че полето за парола е невалидно. Според формата дължината на стойността на паролата трябва да бъде в рамките на 10 до 20 символа. 5 знака са дадени като вход в следната форма. За това формулярът показва съобщението за грешка.
След въвеждане на валиден изход във всяко поле на формуляра, ще се появи следният изход.
Заключение:
Начинът за създаване на много лесен потребителски формуляр за регистрация в приложението Django е показан в този урок. Django има много методи за създаване на различни видове полета на формуляра, като CharField (), EmailField (), TextFiled и т.н. Задачата за проверка на формуляра става много по-лесна, когато формулярът е проектиран от формуляр Django.