Вроде легкие вопросы и ответы знаю правильные, но система считает иначе и правильные ответысчитает неправильными. Приходится выполнть по несколько раз. Это я не правильно делаю или тест так составлен? |
Перспективы использования Django
Получение результатов поиска из индекса
Поиск индекса - довольно просто. Опять же, мы используем Python запросы, чтобы отправить закодированную JSON-строку с данными в нашу конечную точку ES:
data = { "query" : { "query_string": { "query": "raj" } } } response = requests.post( ‘http://127.0.0.1:9200/contacts/contact/_search’,data=json.dumps(data)) print response.json()
Это даст результат, показанный на следующей картинке:
В этом примере мы ищем термин "raj" в нашем индексе контактов. ES возвращает все попадания, сортированные по релевантности в JSON-формате. Каждое из этих попаданий содержит поле "_id", что дает вам первичный ключ соответствующей записи блога. С использованием Django ORM, теперь просто получить фактические объекты из базы данных.
Конечный поиск ES предлагает неограниченный набор вариантов и фильтров; быстрый поиск из огромных наборов данных, разбиение на страницы и все, что вам нужно для построения мощного поискового движка.
Это только верхушка айсберга. При построении приложения Django с Elasticsearch, вы узнаете много интересных особенностей, таких как агрегации, который могут быть использованы в предшествующем примере.
В этой лекции, мы узнали о двух важных компонентах, которые чаще всего используются в проектах Django, а именно, AngularJS и Elasticsearch.
Как базовый интерфейс, AngularJS не только снижает нагрузку с сервера, нажав логика визуализации в браузере, он также дает богатый опыт для пользователя при использовании AngularJS-powered приложения.
Elasticsearch, с другой стороны, является одним из наиболее популярных поисковых движков, который является также open source. Простота создания и масштабирования Elasticsearch является тем, что заставляет выбрать его, основываясь на любых требованиях к поисковым движкам. Вы так же немного узнали о Django. Когда начался курс, мы были уверены, что вам нужна помощь в изучении и вы станете экспертами в этой области. Это только начало; столько всего нужно еще изучить, чтобы стать экспертом в том, что описывалось в каждой главе. Мы подошли к концу курса. В этом курсе мы прошли процесс создания микроблогового приложений с нуля, с использованием Django в качестве основы. Мы охватили множество вопросов, связанных с Веб 2.0 и социальными приложениями, а также многие компоненты Django. Вы всегда можете обратиться к документации Django. Если вы хотите узнать больше о определенной функции или компоненте, посетите https://docs.djangoproject.com.
Послесловие
Совсем недавно вышел в свет Django 1.9. Из основных особенностей, появившихся в данной версии, можно отметить следующее:
- Поддержка выполнения действий (сигналов) после коммита транзакции
- Поддержка валидации паролей
- Разрешено использовать mixins для представлений, основанных на классах
- Новые стили для панели администратора
- Поддержка параллельного выполнения тестов
Контрольные вопросы
- В каких случаях оправдано использование AngulasJS?
- Как можно организовать взаимодействие Django и ElasticSearch?
- Как можно настроить конфигурацию ElasticSearch вручную?
- Что такое директива?
- Что такое контроллер?
Упражнения
Упражнение 1.
Найдите в глоссарии ES определения параметров "shards" и "replicas"
Упражнение 2.
Внедрите полнотекстовый поиск в проект Django на рабочем сервере и убедитесь в его работоспособности
Упражнение 3.
Доработайте пример использования AngularJS, приведенный в лекции с тем, чтобы выдавалось имя пользователя, создавшего твит
Упражнение 4.
Постройте индекс для проекта приложения для твитов, созданного в данном курсе
Список тем рефератов
- AngularJS
- Обзор ElasticSearch
- Полнотекстовый поиск для веб-проектов: сравнительный анализ инструментов
- REST API как часть современного веба.
- Асинхронная веб-разработка
- Технология CORS и ее применение в современных браузерах
- Обзор Django 1.9: новые возможности
- Внедрение бизнес-логики при разработке веб-проектов
- Веб-технологии для будущего
- Веб 2.0, обзор.
Краткие итоги
- Рассмотрели ElasticSearch
- Ознакомились с преимуществами ElasticSearch
- Рассмотрели особенности AngularJS
- Ознакомились с AngularJS
- Рассмотрели простейший пример использования AngularJS
- Ознакомились с терминологией AngularJS
- Установили сервер ElasticSearch
- Создали индекс для полнотекстового поиска
- Заполнили индекс первоначальными данными
- Получили результаты поиска из индекса