EveryBlock.com源代码有什么有趣的特点?
最近,EveryBlock.com这个网站的源代码被公开了。这个网站是由Adrian Holovaty创办的,他是Django框架的共同创始人之一,还是被称为“终身仁慈独裁者”的角色。你可以在这里找到这个公开的源代码。
这些代码来自Django的创始人,肯定有一些有趣的功能、模式、技巧或者技术。你最喜欢的是什么呢?
4 个回答
1
他们发布了源代码,真是太酷了。这段代码写得不错,我觉得看看它能学到一些东西。
我最感兴趣的是地理和地图功能,不过我也觉得用来从各种公共来源获取公开数据的抓取程序很有意思。
1
他们用一个超级复杂的正则表达式来把英文文本中的地点转换成地理坐标。比如,像“在第三街东边的Locust和Pine街之间听到枪声”这样的新闻句子,会生成一个PostGIS的多边形,然后他们会把这个多边形和用户的位置进行匹配,并把它叠加到地图上。这个网站真不错,我一直很期待这个功能,但直到现在才看到这个消息。
3
我注意到的一些事情:
这个发布系统
ebpub
使用了自定义的 Django 认证和用户系统,所以不能使用 django-admin 这个管理工具。虽然它使用的是关系型数据库 PostgreSQL,但各种数据项都存储在一个表里,字段类型则在另一个表中定义,这样做是为了方便扩展。(这是一种替代键值对存储系统的方式,比如 CouchDB)
这个系统使用了自定义的数据库后端,这样在视图中访问修改过的数据库就很方便。
这个博客应用非常简单,只包含一个
Entry
模型,没有视图,只有通用视图。一些现有的机器人可以用来做多种事情,只需要稍微调整一下。