如何在OS X中正确设置Django的GEOIP_PATH?
我刚开始学习Python和Django,想在我的Mac上使用GeoIP。我用Homebrew和pip安装了我需要的所有东西,但我还没弄明白怎么设置GeoIP的路径。所以我总是遇到这个错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.7/site-packages/django/contrib/gis/geoip/base.py", line 91, in __init__
if not path: raise GeoIPException('GeoIP path must be provided via parameter or the GEOIP_PATH setting.')
django.contrib.gis.geoip.base.GeoIPException: GeoIP path must be provided via parameter or the GEOIP_PATH setting.
相关问题:
- 如何在OS X上使用Homebrew安装Python 3.3(而不是3.4)?
- 我可以在OS X上与现有的32位安装并行安装64位的Python 2.7.1吗?
- 通过JavaScript调用动态填充模型属性
- 雪豹系统,Homebrew的Python 2.7,virtualenv,libjpeg与PIL = 导入错误
- Python 2.6 线程在Apache中出现KeyError
- Python mysqldb在Mac OSX 10.6上无法工作
- 在OS X上安装memcached以用于django(python)
- 我可以在OS X中通过同一命令启动终端并打开Python交互式 shell 并运行几个Python语句吗?
2 个回答
0
和其他所有Django设置一样,可以通过项目的 settings 模块来进行设置。
5
你需要获取GeoIP数据,可以从MaxMind网站下载。然后,你需要在你的settings.py文件中设置一个叫做GEOIP_PATH的路径,指向你下载的GeoIP数据所在的位置。
你的文件夹结构可能和这个不完全一样,但对我来说,我的结构是这样的:
<project directory>
...
geoip
...
<app_directory>
settings.py
...
在我的settings.py文件中,我设置了一个ROOT_PATH,指向项目的主目录,所以:
GEOIP_PATH = ROOT_PATH + '/geoip'
下载你需要的GeoIP数据的二进制或gzip版本,解压后放到那个geoip文件夹里。