М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения



Pdf көрінісі
бет289/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   285   286   287   288   289   290   291   292   ...   334
Байланысты:
Изучаем Python


Глава 18 • Знакомство с Django
Атрибут 
text
содержит данные 
CharField
— блок данных, состоящий из символов, 
то есть текст 

. Атрибуты 
CharField
могут использоваться для хранения неболь-
ших объемов текста: имен, заголовков, названий городов и т. д. При определении 
атрибута 
CharField
необходимо сообщить Django, сколько места нужно зарезер-
вировать для него в базе данных. В данном случае задается максимальная длина 
max_length
, равная 200 символам; этого должно быть достаточно для хранения 
большинства имен тем.
Атрибут 
date_added
содержит данные 
DateTimeField
— блок данных для хранения 
даты и времени 

. Аргумент 
auto_add_now=True
приказывает Django автоматически 
присвоить этому атрибуту текущую дату и время каждый раз, когда пользователь 
создает новую тему.
ПРИМЕЧАНИЕ
Полный список всех полей, которые могут использоваться в моде-
ли, приведены в документе Django Model Field Reference на 
https://docs .djangoproject .com/
en/2 .2/ref/models/fields/
. Возможно, вся эта информация вам сейчас не понадобится, но 
она будет в высшей степени полезной, когда вы начнете разрабатывать собственные 
приложения .
Необходимо сообщить Django, какой атрибут должен использоваться по умолча-
нию при вводе информации о теме. Django вызывает метод 
__str__()
для вывода 
простого представления модели. Мы написали реализацию 
__str__()
, которая 
возвращает строку, хранящуюся в атрибуте 
text

.
Активизация моделей
Чтобы использовать модели, необходимо приказать Django включить приложение 
в общий проект. Откройте файл 
settings .py
(из каталога 
learning_log/learning_log

и найдите в нем раздел, который сообщает Django, какие приложения установлены 
в проекте:
settings.py
...
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
)
...
Добавьте наше приложение в этот кортеж; измените содержимое 
INSTALLED_APPS

чтобы оно выглядело так:
...
INSTALLED_APPS = (
# Мои приложения


Начало работы над приложением
401
'learning_logs',
# Приложения django по умолчанию.
'django.contrib.admin',
...
]
...
Группировка приложений в проекте упрощает управление ими по мере того, как 
проект растет, а количество приложений увеличивается. Здесь мы создаем раздел, 
который пока содержит только приложение 
learning_logs
. Очень важно разме-
стить свои приложения перед приложениями по умолчанию на случай, если вам 
понадобится переопределить поведение таких приложений.
Затем необходимо приказать Django изменить базу данных для хранения инфор-
мации, относящейся к модели 
Topic
. В терминальном окне введите следующую 
команду:
(ll_env)learning_log$ 


Достарыңызбен бөлісу:
1   ...   285   286   287   288   289   290   291   292   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет