Python

Как да създадете Django форма?

Как да създадете Django форма?
Използването на формуляра е съществена част от всяко уеб приложение. Данните от потребителите на уебсайта могат да бъдат получени чрез формуляра. Той може да съдържа различни видове полета, като текстово поле, комбинирано поле, квадратче за отметка, радио бутон и т.н. да взема данни от потребителите. Django framework съдържа голям брой библиотеки, за да помогне на уеб разработчика да проектира HTML форма за вземане на входни данни от потребителя, обработка на въведените данни и отговор на потребителския вход.

Как може да се използва 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 файл. Когато Изпращане бутонът е натиснат, данните за формуляра ще бъдат изпратени на сървъра.





Форма за регистрация на потребителя



% csrf_token%
форма.as_p



Отвори URL адреси.py от django_pro папка и модифицирайте съдържанието със следното съдържание.

Ето, 'регистрирам/' path се използва за зареждане на формуляра в браузъра.

# Импортирайте необходимите модули
от django.път за импортиране на URL адреси
от изгледи за импортиране на форма
# Метод на повикване за показване на формуляра
urlpatterns = [
път ('регистър /', изгледи.form_request)
]

Отворете всеки браузър и въведете следния URL, за да заредите формуляра за регистрация на потребителя в браузъра.

http: // localhost: 8000 / регистър

Следният изход ще се появи след стартиране на URL адреса. Проверката на празното поле, стойността на максималната дължина на имената, имейлите и полетата за парола, както и минималната и максималната стойност на дължината на полето за парола ще бъдат проверени след подаване на формуляра.

Следващият изход показва, че полето за парола е невалидно. Според формата дължината на стойността на паролата трябва да бъде в рамките на 10 до 20 символа. 5 знака са дадени като вход в следната форма. За това формулярът показва съобщението за грешка.

След въвеждане на валиден изход във всяко поле на формуляра, ще се появи следният изход.

Заключение:

Начинът за създаване на много лесен потребителски формуляр за регистрация в приложението Django е показан в този урок. Django има много методи за създаване на различни видове полета на формуляра, като CharField (), EmailField (), TextFiled и т.н. Задачата за проверка на формуляра става много по-лесна, когато формулярът е проектиран от формуляр Django.

Как да разработите игра на Linux
Преди десетилетие не много потребители на Linux биха прогнозирали, че любимата им операционна система един ден ще бъде популярна игрална платформа за ...
Пристанища с отворен код на търговски игрални машини
Безплатни разширения на играта с отворен код и междуплатформени игри могат да се използват за възпроизвеждане на стари, както и някои от доста скорошн...
Най-добрите игри за команден ред за Linux
Командният ред не е само най-големият ви съюзник при използване на Linux - той може да бъде и източник на забавление, защото можете да го използвате, ...