相关疑难解决方法(0)

在manage.py测试期间"django.db.utils.ProgrammingError:relation"app_user"不存在"

我的设置:

  • Django 1.8.3
  • Python 2.7.10
  • Ubuntu 14.04
  • Django的双因子身份验证== 1.2.0

运行时出现以下错误python manage.py test:

Traceback (most recent call last):
  File "/src/venv/bin/django-admin.py", line 5, in <module>
    management.execute_from_command_line()
  File "/src/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
    utility.execute()
  File "/src/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 330, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/src/venv/lib/python2.7/site-packages/django/core/management/commands/test.py", line 30, in run_from_argv
    super(Command, self).run_from_argv(argv)
  File "/src/venv/lib/python2.7/site-packages/django/core/management/base.py", line 393, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/src/venv/lib/python2.7/site-packages/django/core/management/commands/test.py", line 74, in execute
    super(Command, self).execute(*args, **options)
  File "/src/venv/lib/python2.7/site-packages/django/core/management/base.py", line 444, in execute
    output = self.handle(*args, **options)
  File "/src/venv/lib/python2.7/site-packages/django/core/management/commands/test.py", line 90, in …
Run Code Online (Sandbox Code Playgroud)

python django postgresql django-models

9
推荐指数
3
解决办法
6016
查看次数

使用Django进行测试:停留在测试数据库的创建上

我在为我的应用程序运行测试时遇到了一些麻烦,并且在上一篇文章中设法解决了这些问题。

现在执行的python manage.py test过程不会引起任何错误,但是它会卡在数据库创建中:

如我在pgAdmin中所见,当测试数据库不存在时,它确实会创建,但是它被此消息卡在进程中:

Creating test database for alias 'default'...
Run Code Online (Sandbox Code Playgroud)

它永远都停留在这里,因此当我手动完成该过程并test再次运行时,它说数据库存在,并提示我删除它并重新创建或取消该过程。我键入“是”,并且该过程再次被其他消息卡住:

Destroying old test database 'default'...
Run Code Online (Sandbox Code Playgroud)

使用pgAdmin打开时,我无法立即看到任何新test_dbname数据库,但是如果我关闭并再次打开它,就test_dbname可以了,但是test任务只是卡在那儿,无法进行...

解决此问题的方法是此解决方案,即禁用迁移。这样,它就不再卡在这些消息上,并且运行默认测试。

.
----------------------------------------------------------------------
Ran 1 test in 0.002s

OK
Run Code Online (Sandbox Code Playgroud)

但是,这似乎是一个不好的解决方案和作弊手段。运行测试时一定有充分的理由要运行迁移,所以我看不出禁用它们的充分理由。

python migration django django-1.8

5
推荐指数
1
解决办法
1077
查看次数