|
Оглавление
|
Наше представление «Здравствуй, Мир» было поучительным с точки зрения основ использования Django, но оно не было примером динамического создания страниц, так как содержимое страницы не изменялось. Каждый раз, посещая эту страницу, вы видели одно и тоже. То же самое достигается и с помощью статического HTML файла. Для нашего второго представления давайте создадим что-нибудь динамическое — страницу, которая будет отображать текущую дату и время. Это хороший и одновременно простой пример, потому что он не требует ни использования базы данных, ни обработки пользовательского ввода — просто выводит значение даты/времени, ориентируясь на внутренние часы сервера. Это лишь чуть более интересно, чем предыдущее представление, но оно продемонстрирует несколько новых концепций.
Данное представление должно делать две вещи: вычислять текущую
дату и время и возвращать >>> import datetime >>> now = datetime.datetime.now() >>> now datetime.datetime(2008, 12, 13, 14, 9, 39, 2731) >>> print now 2008-12-13 14:09:39.002731
Это достаточно просто и не требует наличия Django. Это просто код на языке Python. (Мы хотели бы подчеркнуть, что вы должны знать различия между «просто Python» и кодом, который относится к Django. После того, как вы изучите Django, мы хотим, чтобы вы могли применить свои знания в других Python проектах, которые не обязательно бы использовали Django.)
Для того, чтобы создать представление, которое отображает
текущую дату и время, необходимо добавить вызов
from django.http import HttpResponse
import datetime
def current_datetime(request):
now = datetime.datetime.now()
html = "<html><body>It is now %s.</body></html>" % now
return HttpResponse(html)
Аналогично функции представления from django.http import HttpResponse
import datetime
def hello(request):
return HttpResponse("Hello world")
def current_datetime(request):
now = datetime.datetime.now()
html = "<html><body>It is now %s.</body></html>" % now
return HttpResponse(html)
(Начиная с этого места, мы больше не будем показывать предыдущий код в примерах, кроме моментов, когда это действительно необходимо. У вас будет возможность понять из контекста, какая часть кода новая, а какая — старая.)
Пройдёмся по изменениям, которые мы сделали в
После добавления новой функции в from django.conf.urls.defaults import *
from mysite.views import hello, current_datetime
urlpatterns = patterns('',
('^hello/$', hello),
('^time/$', current_datetime),
)
Здесь мы сделали два изменения. Сначала мы проимпортировли
функцию После всех этих действий можно запустить runserver и посетите http://127.0.0.1:8000/time/ с помощью браузера. Вы должны увидеть текущую дату и время. Временная зона в Django
Время на вашем компьютере может отличаться на несколько
часов. Всё потому, что Django обращает внимание на временные
зоны, а по умолчанию Django настроен на зону
America/Chicago. (Она должна быть установлена
по-умолчанию, вот разработчики Django и выбрали в качестве
таковой свою временную зону.) Если вы живёте не рядом с
ними, укажите свою зону в
|
Увидели ошибку?
Выделите её мышкой и нажмите
-
Обработано:
511
49
130
71
Версия книги
1.0
2.0
Версия 2.0 в процессе перевода!
Мой луч
Многообразие света
Полезное
Актуальные вакансии,
Python работа
для python-разработчиков.
Скачать в формате
CHM от 2 сентябряЗаказать PDF файл можно через почту, чат, джаббер. Всего 2WMZ. Содержимое точно соответствует содержимому сайта. Чем чаще заказываете — тем больше перевожу. Русская группа
Ускорить процесс перевода!
R130494980980
Z425285133788 E112528079659 U327380922061 Книга помогла реализовать:
|
| © 2008-2009 Ruslan Popov @ gmail.com | Powered by Django 1.1 beta 1 SVN-11114 |