如何从connection.py文件中删除硬编码的IP地址。 (我对此非常陌生)

时间:2015-01-21 05:07:48

标签: python django static-ip-address

有人可以告诉我如何删除在connection.py文件中硬编码的IP地址吗? 我们被告知检查settings.py以获取数据库连接设置 通常的做法是使settings.py包含另一个文件,例如settings_local.py,用于特定于环境的配置 没有settings_local.py。这个文件可以隐藏还是不存在?
如果它不存在,可以创建它,希望删除硬编码的内容。

`/src/mongoengine/mongoengine/connection.py", line 126, in get_connection
    raise ConnectionError("Cannot connect to database %s :\n%s" % (alias, e))
    mongoengine.connection.ConnectionError: Cannot connect to database default :
    enter code here`could not connect to ip-10-171-58-44.ec2.internal:27017: timed out

1 个答案:

答案 0 :(得分:1)

默认情况下,mongoengine将尝试连接到localhost。它没有在那里找到mongo实例,这是你的错误的来源。

ip-10-141-58-44.ec2.internal只是服务器的主机名;它在任何地方都没有硬编码。

查看您的settings.py文件,应该有一行,例如:

connect('somenamehere')

其中'somenamehere'是数据库的名称;如果存在这样的行,则它尝试连接到localhost上的mongo。

现在你有两个选择:

  1. 在您的localhost上设置mongo。
  2. 更新settings.py并将其指向您的mongo数据库安装位置。您可以通过传入额外参数hostconnect('somenamehere', host='10.10.10.1')来执行此操作。有关详细信息,请参阅documentation