3

我在网上完成了一个很棒的 django 教程,但是在最终的 heroku 部署中遇到了问题。

这是 django 教程: http: //gettingstartedwithdjango.com/en/lessons/introduction-and-launch/

我遇到的问题是最后一次调用heroku:

heroku python manage.py syncdb

这是我得到的错误:

(blog-venv)vagrant@precise64:/vagrant/projects/microblog$ heroku run python manage.py syncdb
Running `python manage.py syncdb` attached to terminal... up, run.2530
Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/__init__.py", line 443, in execute_from_command_line
    utility.execute()
  File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/__init__.py", line 382, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/base.py", line 196, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/base.py", line 232, in execute
    output = self.handle(*args, **options)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/base.py", line 371, in handle
    return self.handle_noargs(**options)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/core/management/commands/syncdb.py", line 57, in handle_noargs
    cursor = connection.cursor()
  File "/app/.heroku/python/lib/python2.7/site-packages/django/db/backends/__init__.py", line 306, in cursor
    cursor = self.make_debug_cursor(self._cursor())
  File "/app/.heroku/python/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py", line 177, in _cursor
    self.connection = Database.connect(**conn_params)
  File "/app/.heroku/python/lib/python2.7/site-packages/psycopg2/__init__.py", line 178, in connect
    return _connect(dsn, connection_factory=connection_factory, async=async)
psycopg2.OperationalError: could not connect to server: No such file or directory
        Is the server running locally and accepting
        connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

(blog-venv)vagrant@precise64:/vagrant/projects/microblog$

有什么想法吗

4

2 回答 2

5

据我所知(git 中级知识) 如果您忘记将 locals.py 添加到 .gitignore 文件并提交它,那么 git 存储库中仍会有 locals.py 文件。

您必须从 git 存储库中删除该文件,因为它包含在以前的提交中。

git rm --cached microblog/settings/local.py

然后将 microblog/settings/local.py 添加到 .gitignore 并提交更改。

一旦 heroku 看到正确的 DATABASES 设置。然后syncdb工作正常

DATABASES = {'default' : dj_database_url.config() }
于 2013-02-03T17:44:10.833 回答
2

您是否将: microblog/settings/local.py添加 到 .gitignore 文件中?

如果这不起作用,请尝试注释掉 local.py 文件中的 DATABASES = {....} 位,看看是否有效

https://github.com/kennethlove/gswd-transcripts/blob/master/lesson-01.md

于 2013-01-30T00:40:47.117 回答