为人们提供在您的Django网站中查找代表位置的一种简单方法。
项目描述
django-reploc是一个项目,允许您在网站上安装谷歌地图,以显示和筛选网站上的“代表”。这些代表可以是您产品的经销商/供应商、您的朋友或商业伙伴,或者是您想去并想进行广告的地方。我构建了这个应用程序作为一个经销商定位器,但我意识到这个应用程序的价值,并尽量使其尽可能通用。
功能
无限数量的代表。
每个代表无限数量的位置。
自动确定位置的经纬度。如果确定地址的坐标有问题,您可以手动输入。
位置可以具有“属性”。这是一种指定,例如,哪些位置携带您产品的哪些系列的方法。
您可以选择是否希望使用JavaScript或Python来完成繁重的工作。
用户可以在指定的地址半径内搜索位置。
为您的用户提供到各个代表位置的驾驶路线。
需求
django-reploc 至少需要 Django 1.0。为了自动确定坐标,django-reploc 需要使用 geopy 库。这可以通过使用 easy_install geopy 来安装。应用程序还需要您有一个 Google Maps API 密钥。要获取一个,只需访问 Google Maps API 页面 并填写必要的信息。最后,django-reploc 极度依赖 jQuery 来运行。我使用了当前最新版本的 jQuery,即 1.2.6。
安装
使用以下方法之一下载 django-reploc
easy_install
您可以从 CheeseShop 下载该软件包或使用
easy_install django-reploc
来下载和安装 django-reploc。
pip
使用以下方法安装 django-reploc
pip install -U django-reploc
软件包下载
从下载部分下载最新的 .tar.gz 文件,并将其解压到您能记住的地方。使用 python setup.py install 来安装它。
从源代码控制克隆
您可以从以下这些官方仓库获取最新源代码副本
hg clone http://bitbucket.org/codekoala/django-reploc hg clone http://django-reploc.googlecode.com/hg django-reploc git clone http://github.com/codekoala/django-reploc.git
验证安装
确保您已成功安装 Pendulum 的最简单方法就是执行如下命令之一
python -c "import reploc; print reploc.get_version()"
如果它显示了您尝试安装的 django-reploc 版本,那么您就可以开始了。如果您看到其他内容,您可能需要检查您的 PYTHONPATH 环境变量。
配置
首先,您必须将此项目添加到 settings.py 中的 INSTALLED_APPS 列表。
INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', ... 'reploc', ... )
接下来,您应该将上下文处理器添加到 TEMPLATE_CONTEXT_PROCESSORS 设置中,以便模板可以访问 Google Maps API 密钥。如果您打算直接将 API 密钥放入模板中,则无需此步骤。
TEMPLATE_CONTEXT_PROCESSORS = ( 'django.core.context_processors.auth', 'django.core.context_processors.i18n', 'django.core.context_processors.media', 'reploc.context_processors.representatives', )
在您的 settings.py 文件中定义您的 Google Maps API 密钥。
GOOGLE_MAPS_KEY = 'sdfsafasfdasfdasdf'
此外,您可能指定是否希望 JavaScript 或 Python 处理基础工作(例如距离计算等)
REPLOC_USE_JS = False
这可能永远不会被广泛使用,但它就在那里,以防万一。应用程序默认使用 JavaScript。
运行 python manage.py syncdb。这将为您数据库创建一些必要操作的表。
接下来,您应该在主 urls.py 文件中添加一个条目。例如
from django.conf.urls.defaults import * from django.contrib import admin admin.autodiscover() urlpatterns = patterns('', (r'^admin/(.*)', admin.site.root), (r'^locator/', include('reploc.urls')), )
最后,您可能想要复制我在 django-reploc 中使用的媒体文件,除非您有自己的文件。这些文件可以在项目的 /media/ 目录中找到。实际上,您只需要将以下两个文件复制到您的媒体目录: reploc/media/js/jquery-1.3.1.min.js 和 reploc/media/img/ajax.gif(请参阅 http://code.google.com/p/django-reploc/source/browse/#hg%2Freploc%2Fmedia 了解特定文件)。或者,您可以覆盖模板以使用您想要的任何内容。不过,我不保证应用程序在这样做后仍然可以工作;)
用法
一旦您完成所有配置,只需启动您的网站(或重启它)并进入Django管理界面即可。如果您想的话,可以直接从“添加代表”页面添加位置。完成后,请转到http://www.yourwebsite.com/locator/(或根据您的具体情况)查看应用程序的实际运行情况。
更新位置坐标
我已经创建了一个工具,帮助您更新位置坐标,如果您觉得需要的话。每次保存位置时都应该更新它们,但如果您想一次性更新所有位置,可以使用命令python manage.py reploc_update_coords。
项目详情
django-reploc-0.1.1-pre1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 0198f5ae53aa7688eaff800443f7811ea3c5d8880538b0f6695c93681829835e |
|
MD5 | de9ecb5c09eabb8de4b44766668e11bb |
|
BLAKE2b-256 | ba3dc48ccd24221e701bcb2afcdb7af2fceba7255dddc054ebd332351264db5b |