Джанго

Як створити представлення Django?

Як створити представлення Django?
Різні типи даних програми Django, такі як вміст HTML, дані XML, дані JSON, зображення, помилка 404 тощо. переносяться в шаблон через Django view. Кожне представлення створюється з певною метою і асоціюється з певним шаблоном. Дані представлення можуть генеруватися від користувача через форму HTML або з бази даних або бізнес-логіки. Представлення Django можна створити за допомогою методу класу python або функції python. Подання на основі класів містять багато функціональних можливостей порівняно з поданнями на основі функцій. Для цього більшість програм Django використовують представлення на основі класів для представлення даних програми Django. Способи створення подання на основі функцій та подання на основі класів були описані в цьому посібнику.

Передумови:

Перш ніж практикувати приклади цього підручника, вам потрібно виконати наступні завдання:

  1. Встановіть Django версії 3+ на Ubuntu 20+ (бажано)
  2. Створіть проект Django
  3. Запустіть сервер Django, щоб перевірити, чи працює він належним чином

Налаштування програми Django:

A. Щоб створити програму Django з ім'ям viewapp, виконайте таку команду:

$ python3 керувати.py startapp viewapp

B. Щоб створити користувача для доступу до бази даних Django, запустіть таку команду. Якщо ви створили користувача раніше, пропустіть цю частину:

$ python3 керувати.py створюєкористувача

C. Додайте назву програми в частину налаштувань INSTALLED_APP.файл py.

INSTALLED_APPS = [
..
'viewapp'
]

D. Створіть папку з іменем шаблони всередині viewapp папку та встановіть шаблони розташування програми в ШАБЛОНИ частина налаштування.py файл.

ШАБЛОНИ = [

.. .
'DIRS': ['/ home / fahmida / django_pro / viewapp / templates'],
.. .
,
]

Створіть простий функціональний вигляд:

Відкрийте погляди.py файл із viewapp папку та замініть вміст цього файлу наступним сценарієм. індекс () використовується у сценарії для створення вмісту HTML, який буде надісланий браузеру за допомогою HttpResponse () метод. Тут буде прочитано поточну дату та час роботи системи сьогодні () і поточне значення дати буде сформовано перед надсиланням у браузер.

Перегляди.py

# Імпортуйте модуль дати, щоб прочитати поточну дату
з дати і часу імпорту
# Імпортуйте модуль HttpResponse для надсилання даних із подання до шаблону
від django.http імпорт HttpResponse
# Визначте функцію для створення подання на основі функцій
індекс def (запит):
# Прочитайте поточну дату
сьогодні = дата.сьогодні ()
# Встановити статичні дані для подання
content = "

Ласкаво просимо до LinuxHint

"
content + = "Сьогодні" + сьогодні.strftime ("% B") + "" + сьогодні.strftime ("% d") + "," + str (сьогодні.рік) + "

"
# Надіслав вміст у браузер
повернути HttpResponse (зміст)

Змінити вміст URL-адреси.py файл із таким сценарієм. У сценарії, "ласкаво просимо /" шлях визначений для виклику індекс () функція, яка надсилатиме вміст HTML у файл шаблону.

URL-адреси.py

# Імпорт модуля шляху
від django.шлях імпорту URL-адрес
# Імпорт модуля перегляду
з viewapp імпортувати подання
# Метод індексу викликів для відображення вмісту
urlpatterns = [
# Визначте шлях до функції виклику index ()
path ('ласкаво просимо /', перегляди.індекс)
]

Запустіть наступну URL-адресу з браузера, яка покаже наступний результат. Відформатований текст заголовка та поточне значення дати відображаються у вихідних даних.

http: // localhost: 8000 / welcome /

Створіть простий подання на основі класу:

Створити перегляди2.py файл у папці viewapp та додайте наступний сценарій. MyView клас визначений у сценарії, що містить метод з іменем отримати (). Ім'я змінної списку listdata оголошено в сценарії для створення списку з 10 випадкових чисел. Значення списку будуть передані в шаблон через HttpResponse () метод, коли викликається цей вигляд. випадковий модуль був використаний у сценарії для генерації випадкового цілого числа у кожній ітерації для цикл, використовуючи randint () функція.

перегляди2.py

# Імпортуйте модуль HttpResponse для надсилання даних із подання до шаблону
від django.http імпорт HttpResponse
# Імпорт модуля перегляду
від django.перегляд імпорту Перегляд
# Імпорт випадкового модуля
імпорт випадковий
# Визначте клас для переглядів на основі класів
клас MyView (Перегляд):
def get (self, request):
# Оголосіть змінну списку
listdata = []
# Додайте перший елемент списку
listdata.append ('

Список 10 випадкових чисел:

')
# 10 разів повторіть цикл
для n в діапазоні (10):
# Створіть випадкове число в межах від 1 до 50
random_number = випадковий.randint (1, 50)
# Додайте випадкове число до списку
listdata.додати (випадковий_число)
# Додайте елемент перерви до списку
listdata.append ('
')
# Додайте останній елемент списку
listdata.append ('
')
# Надішліть значення списку браузеру
повернути HttpResponse (listdata)

Змінити вміст URL-адреси.py файл із таким сценарієм. У сценарії "номер/ ”Шлях визначений для виклику MyView.as_view () метод, який надішле дані списку у файл шаблону.

URL-адреси.py

# Імпорт модуля шляху
від django.шлях імпорту URL-адрес
# Імпорт модуля перегляду
з viewapp імпортувати подання
# Імпортувати клас MyView
з viewapp.views2 імпортувати MyView - -
# Виклик методу get класу MyView
urlpatterns = [
# Визначте шлях до функції виклику index ()
path ('ласкаво просимо /', перегляди.індекс),
# Визначте шлях до виклику MyView.метод as_view ()
path ('номер /', MyView.as_view ()),
]

Запустіть наступну URL-адресу з браузера, яка покаже наступний результат. Номери вихідних даних будуть змінені, якщо сторінку оновлено, оскільки кожне число списку буде сформовано випадковим чином.

http: // localhost: 8000 / номер /

Висновок:

Результат роботи веб-програми залежить від сценарію файлу представлення, який є основною частиною будь-якого веб-додатку. Погляди, засновані на функціях, в основному використовуються в ранній версії програми Django, а тепер засновані на класах змагання використовуються в більшості програм Django. Шляхи створення обох типів подань показані в цьому посібнику, щоб допомогти новим користувачам Django створювати свої подання на основі їх програми.

SuperTuxKart for Linux
SuperTuxKart is a great title designed to bring you the Mario Kart experience free of charge on your Linux system. It is pretty challenging and fun to...
Battle for Wesnoth Tutorial
The Battle for Wesnoth is one of the most popular open source strategy games that you can play at this time. Not only has this game been in developmen...
0 A.D. Tutorial
Out of the many strategy games out there, 0 A.D. manages to stand out as a comprehensive title and a very deep, tactical game despite being open sourc...