Содержание
- 2. Django Это сильный web-framework, созданный на Python, который следует философии DRY (Don’t repeat yourself) Он реализован
- 3. Реляционные базы данных Базы данных состоят из таблиц, где каждая таблица состоит из строк (например, записей,
- 4. Каждое поле таблицы имеет имя. Например, в таблице «Игрушки» имена полей такие: НАЗВАНИЕ, МАТЕРИАЛ, ЦВЕТ, КОЛИЧЕСТВО.
- 5. Мodel — часть, касающаяся доступа к данным; соответствует уровню работы с базой данных; View - часть,
- 6. Уровни в Django Мodel, уровень доступа к данным. Здесь сосредоточена вся информация о данных: как получить
- 7. Взаимодействие уровней Запросы НТТР передаются веб-сервером платформе Django, которая принимает их на уровне обработки запросов. После
- 8. Слабая связанность У каждого компонента веб-приложения, созданного на базе Django, имеется единственное назначение, поэтому его можно
- 9. Красивый URL В Django невозможно породить конструкции типа:«index.php?func=user&subfunc=add&PHPSESSIONID=…» Имеется файл, в котором пишется список всех видов
- 10. «Питоничность» Django Использование краткого, но мощного синтаксиса. Должен существовать один — и, желательно, только один —
- 11. Django обладает немалым количеством уже написанных базовых вещей: Сессии. Достаточно подключить в приложение нужный модуль, и
- 12. Кеширование. Для того, чтобы не обращаться в базу каждый раз, когда требуются редко меняющиеся данные, можно
- 13. Другие возможности Django Подключаемая архитектура приложений, которыми можно компоновать целевую информационную систему. Система фильтров (англ. middleware)
- 14. Установка Django Скачать Django можно отсюда: http://www.djangoproject.com/download/ Django работает с версиями Python 2.3 – 2.6 В
- 15. Создание проекта К системной переменной Path добавляем путь до django-admin.py; В домашнем каталоге создаем папку, например,
- 16. Проект __init__.py. Пустой файл. Необходим для того, чтобы система рассматривала mysite как модуль Python. Обычно не
- 17. Проект urls.py. URL для данного проекта. Вначале пуст. settings.py. Файл настроек данного проекта. Здесь указывается, какая
- 18. Сервер разработки Сервер разработки Django — это встроенный упрощенный веб-сервер, которым можно пользоваться в ходе разработки
- 19. Сервер разработки
- 20. Сервер разработки По умолчанию команда runserver запускает сервер разработки на порту 8000 и принимает запросы на
- 21. Создание приложения Cmd: manage.py startapp books books/ __init__.py models.py views.py
- 22. Hello, world! В views.py: from django.http import HttpResponse def hello(request): return HttpResponse('Hello, world!') Необходимо сообщить Django,
- 23. Конфигурация URL Это оглавление сайта. В urls(без комментариев): from django.conf.urls.defaults import * urlpatterns = patterns('', )
- 24. Шаблоны Ordering notice Ordering notice Dear {{ person_name }}, Thanks for placing an order from {{
- 25. Шаблоны Информация, которая передается шаблону для отображения, называется контекстом. Объект Context похож на словарь. Контекст заполняется
- 26. Шаблоны >>> from django.template import Context, Template >>> t = Template('My name is {{ name }}.')
- 27. Шаблоны from django.template import Template, Context from django.http import HttpResponse import datetime def current_datetime(request): now =
- 28. Шаблоны Загрузка В settings.py: TEMPLATE_DIRS = ( ‘G:/home/django/mysite/templates', ) from django.template.loader import get_template #... t =
- 29. Шаблоны Тег Include {% include "includes/nav.html" %} {{ title }} Наследование Тег {%block%} {% endblock %}
- 30. Модели from django.db import models class Publisher(models.Model): name = models.CharField(max_length=30) address = models.CharField(max_length=50) website = models.URLField()
- 31. Модели MIDDLEWARE_CLASSES = ( #'django.middleware.common.CommonMiddleware', #'django.contrib.sessions.middleware.SessionMiddleware', #'django.contrib.auth.middleware.AuthenticationMiddleware', ) INSTALLED_APPS = ( #'django.contrib.auth', #'django.contrib.contenttypes', #'django.contrib.sessions', #'django.contrib.sites', 'mysite.books',
- 32. Модели manage.py validate – корректность задания модели manage.py sqlall books – посмотреть, что передано в базу
- 33. Модели >>> from books.models import Publisher >>> p1 = Publisher(name='Addison-Wesley', address='75 Arlington Street‘, website='http://www.apress.com/') >>> p1.save()
- 34. Модели class Author(models.Model): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=40) email = models.EmailField() def __unicode__(self): return '%s
- 35. Почему Django? Python Бесплатность Разделение логики и представления Диспетчер URL Шаблонизатор ORM Интерфейс администратора Аутентификация и
- 36. Google App Engine Google предоставляет свои сервера Ограничения: Нет доступа на запись в файловую систему сервера.
- 37. Google Yandex Youtube
- 39. Скачать презентацию