在一篇中,咱們介紹了 《Django ElasticSearch Ionic 打造 GIS 移動應用 —— 架構設計》。接着,咱們就開始實戰了,內容也很簡單。python
1.建立虛擬環境git
virtualenv -p /usr/bin/python2.67 django-elasticsearch
2.建立項目github
爲了方便,這裏用的是Mezzanine CMS,相比Django的主要優點是,之後擴展方便。可是對於Django也是能夠的。django
3.安裝依賴centos
這裏個人全部依賴有架構
django-haystack Mezzanine==3.1.10 djangorestframework pygeocoder elasticsearch
安裝app
pip install requirements.txt
4.安裝ElasticSearchcurl
CentOSelasticsearch
wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.4.2.zip sudo unzip elasticsearch-1.4.2 -d /usr/local/elasticsearch rm elasticsearch-1.4.2.zip cd /usr/local/elasticsearch/elasticsearch-1.4.2/ ./bin/plugin install elasticsearch/elasticsearch-cloud-aws/2.4.1 curl -XGET http://localhost:9200
Mac OSionic
brew install elasticsearch
5.Django Geo環境搭建
CentOS等GNU/Linux系統: 能夠參照CentOS Django Geo 環境搭建
MacOS: Mac OS Django Geo 環境搭建
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor' HAYSTACK_CONNECTIONS = { 'default': { 'ENGINE': 'haystack.backends.elasticsearch_backend.ElasticsearchSearchEngine', 'URL': 'http://127.0.0.1:9200/', 'INDEX_NAME': 'haystack', }, }
HAYSTACK_SIGNAL_PROCESSOR
是爲了能夠實時處理。HAYSTACK_CONNECTIONS
則是配置搜索引擎用的。
在settings.py
中的INSTALLED_APPS
添加
"haystack", "rest_framework",
接着
python manage.py createdb python manage.py migreate
運行
python manage.py runserver