跳转到主要内容

为人们提供在您的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.jsreploc/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 (39.2 kB 查看哈希值)

上传时间 源代码

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面