搜索引擎是个好东西,GIS也是个好东西。当前还有Django和Ionic。最后效果图git
对咱们的需求进行简要的思考后,设计出了下面的一些简单的架构。程序员
简单说明:github
下面是框架的一些简单的介绍数据库
Django 是一个开放源代码的Web应用框架,由Python写成。采用了MVC的软件设计模式,即模型M,视图V和控制器C。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。django
Django 的主要目标是使得开发复杂的、数据库驱动的网站变得简单。Django注重组件的重用性和“可插拔性”,敏捷开发和DRY法则(Don't Repeat Yourself)。在Django中Python被广泛使用,甚至包括配置文件和数据模型。设计模式
首先考虑Django,而不是其余Node或者Ruby框架的缘由是:api
固然这是其余框架也所拥有的,主要特性还有:架构
最后一个才是亮点,内置GIS,虽然没怎么用到,可是至少在部署上仍是比较方便的。框架
Haystack provides modular search for Django. It features a unified, familiar API that allows you to plug in different search backends (such as Solr, Elasticsearch, Whoosh, Xapian, etc.) without having to modify your code.elasticsearch
Haystack是为Django提供一个搜索模块blabla..,他的主要特性是能够
write your search code once and choose the search engine you want it to run on
也就是说你只须要写你的代码选择你的搜索引擎就能够工做了。
在上面的Haystack提供了这些一堆的搜索引擎,固然支持地点搜索的只有Solr
和ElasticSearch
,他们支持的空间搜索有:
在文档上没有写Solr的polygon搜索,可是实际上也是支持的(详细见这篇文章: google map solr polygon 搜索。
至于为何用的是ElasticSearch,是由于以前用Solr作过。。。
Ionic提供了一个免费且开源的移动优化HTML,CSS和JS组件库,来构建高交互性应用。基于Sass构建和AngularJS 优化。
用到的主要是AngularJS,以前用他写过三个APP。
与Django Tastypie相比,DRF的主要优点在于Web界面的调试。
由于选的是比较熟悉的技术栈,因此也只花了不到两天的业余时间完成的。或许,这也是全栈程序员的优点所在。