尝试将Django-MongoDB开发环境转移到生产
从网络界面继续收到以下错误:
ImproperlyConfigured at /
port must be an instance of int
在终端上,如果我运行
python manage.py syncdb
File "/home/user/lib/python-environments/djangomongo/local/lib/python2.7/site-packages/pymongo/connection.py", line 209, in __init__
raise TypeError("port must be an instance of int")
django.core.exceptions.ImproperlyConfigured: port must be an instance of int
答案 0 :(得分:0)
仔细检查你如何设置你的pymongo Connection对象: http://api.mongodb.org/python/current/api/pymongo/connection.html 从错误消息判断,您似乎有一个不正确的端口参数。我也猜测如果它在开发中而不是在生产中工作,那么你在prod中缺少一些配置值。
答案 1 :(得分:0)
我还没有100%正常工作的系统,但这里的问题是你的django-nonrel和pymongo版本之间不兼容。对于django 1.3的django-nonrel分支,我需要使用pymongo 1.11(不确定是否有任何2.X的pymongo可以工作)。
答案 2 :(得分:0)
我在使用环境变量时遇到了这个问题。它们作为字符串注入。您需要将port强制转换为int才能开始。