【问题标题】:Different PostgreSQL database: local and remote | Django不同的PostgreSQL数据库:本地和远程|姜戈
【发布时间】:2020-11-01 20:21:14
【问题描述】:

我刚刚配置了我的远程 PostgreSQL 数据库@Elephant,但现在我还想设置本地 PostgreSQL 连接,以便在上线之前进行一些测试(远程数据库)。

这是我的 settings.py:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': '***',  
        'USER': '***',   
        'PASSWORD': '***',   
        'HOST': 'lallah.db.elephantsql.com',  
        'PORT': '5432', 
    }
}

如何更新 settings.py 以让我在不删除大象配置的情况下使用 localhost PostgreSQL 连接?

谢谢!

【问题讨论】:

  • localhost 服务器是否有远程的副本设置?如果是这样,请按照此处的说明进行操作Multiple databases
  • @AdrianKlaver 据我所知,我没有设置任何副本。在副本(localhost)中,我可以makemigrations & migrate而不干扰远程服务器吗?
  • 与其复制 Django 文档,我建议您阅读我发布的链接中的信息。它涵盖了迁移以及与此相关的许多其他事情。另一种选择是创建一个完全不同的 settings.py 并指向它以供本地使用。

标签: django postgresql


【解决方案1】:

最常见的方法是在你的项目中使用类似 local_settings.py 的东西,它不是生产 dist 的一部分(gitignored 等)。您可以在那里定义本地设置,不仅是 db,还包括缓存、压缩选项等等,然后通过导入覆盖 main settings.py 中的生产设置:

if DEBUG == True:
    from .local_settings import DATABASES, CACHES # and whatever else you want

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-29
    • 1970-01-01
    • 2011-12-24
    • 1970-01-01
    • 2019-02-08
    • 2011-07-27
    • 2014-07-23
    • 1970-01-01
    相关资源
    最近更新 更多