gpt4 book ai didi

python - Django 1.8编程报错: relation auth_user doesn't exist when running test

转载 作者:太空宇宙 更新时间:2023-11-04 03:32:28 25 4
gpt4 key购买 nike

我已经在 Stackoverflow 中阅读了有关此问题的现有答案。但没有一个对我有用。当我运行 manage.py test 时,我得到以下结果,尽管我的网站运行良好!

$ ./manage.py test --verbosity=3
manage.py test --verbosity=3
nosetests --with-coverage --cover-package=project.iobserve.forms,project.iobserve.models,project.iobserve.views --verbosity=3
nose.config: INFO: Ignoring files matching ['^\\.', '^_', '^setup\\.py$']
nose.plugins.cover: INFO: Coverage report will include only packages: ['project.iobserve.forms', 'project.iobserve.models', 'project.iobserve.views']
Creating test database for alias 'default' ('test_iobserve')...
Got an error creating the test database: database "test_iobserve" already exists

Type 'yes' if you would like to try deleting the test database 'test_iobserve', or 'no' to cancel: yes
Destroying old test database 'default'...
Operations to perform:
Synchronize unmigrated apps: mptt, djangobower, iobserve, staticfiles, twitter, messages, leaflet, allauth, facebook, multiselectfield, django_nose, rest_framework, honeypot
Apply all migrations: account, sessions, admin, sites, auth, contenttypes, socialaccount
Synchronizing apps without migrations:
Running pre-migrate handlers for application admin
Running pre-migrate handlers for application contenttypes
Running pre-migrate handlers for application sites
Running pre-migrate handlers for application auth
Running pre-migrate handlers for application sessions
Running pre-migrate handlers for application rest_framework
Running pre-migrate handlers for application mptt
Running pre-migrate handlers for application djangobower
Running pre-migrate handlers for application honeypot
Running pre-migrate handlers for application leaflet
Running pre-migrate handlers for application allauth
Running pre-migrate handlers for application account
Running pre-migrate handlers for application socialaccount
Running pre-migrate handlers for application twitter
Running pre-migrate handlers for application facebook
Running pre-migrate handlers for application iobserve
Creating tables...
Creating table iobserve_person
Creating table iobserve_bibliographicreference
Creating table user_profile
Creating table iobserve_coordinates
Creating table iobserve_observingsite
Creating table iobserve_astronomicalorganisation
Creating table iobserve_building
Creating table iobserve_dome
Creating table iobserve_tool
Creating table iobserve_observingtool
Creating table iobserve_telescope
Creating table iobserve_toolcomponent
Creating table iobserve_mirror
Creating table iobserve_astronomicalcoordinates
Creating table iobserve_alias
Creating table iobserve_objecttype
Creating table iobserve_astronomicalflux
Creating table iobserve_astronomicalobject
Running deferred SQL...
Traceback (most recent call last):
File "manage.py", line 7, in <module>
execute_from_command_line(sys.argv)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
utility.execute()
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/__init__.py", line 330, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/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 "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/base.py", line 390, in run_from_argv
self.execute(*args, **cmd_options)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/commands/test.py", line 74, in execute
super(Command, self).execute(*args, **options)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/base.py", line 441, in execute
output = self.handle(*args, **options)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/commands/test.py", line 90, in handle
failures = test_runner.run_tests(test_labels)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django_nose/runner.py", line 350, in run_tests
result = self.run_suite(nose_argv)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django_nose/runner.py", line 297, in run_suite
addplugins=plugins_to_add)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/nose/core.py", line 121, in __init__
**extra_args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/main.py", line 95, in __init__
self.runTests()
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/nose/core.py", line 207, in runTests
result = self.testRunner.run(self.test)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/nose/core.py", line 50, in run
wrapper = self.config.plugins.prepareTest(test)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/nose/plugins/manager.py", line 99, in __call__
return self.call(*arg, **kw)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/nose/plugins/manager.py", line 167, in simple
result = meth(*arg, **kw)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django_nose/plugin.py", line 76, in prepareTest
self.old_names = self.runner.setup_databases()
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django_nose/runner.py", line 533, in setup_databases
return super(NoseTestSuiteRunner, self).setup_databases()
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/test/runner.py", line 166, in setup_databases
**kwargs
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/test/runner.py", line 370, in setup_databases
serialize=connection.settings_dict.get("TEST", {}).get("SERIALIZE", True),
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/db/backends/base/creation.py", line 368, in create_test_db
test_flush=not keepdb,
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/__init__.py", line 120, in call_command
return command.execute(*args, **defaults)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/base.py", line 441, in execute
output = self.handle(*args, **options)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 179, in handle
created_models = self.sync_apps(connection, executor.loader.unmigrated_apps)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 317, in sync_apps
cursor.execute(statement)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/db/utils.py", line 97, in __exit__
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/Users/onekiloparsec/.virtualenvs/iobs-debug/lib/python2.7/site-packages/django/db/backends/utils.py", line 62, in execute
return self.cursor.execute(sql)
django.db.utils.ProgrammingError: relation "auth_user" does not exist

唯一有问题的行是我的模型中 UserProfile 和用户之间的关系。在 UserProfile 模型下面。我还单独地、顺序地运行了 makemigrationsmigrate 等等。但是当我运行测试时,它失败了。我真的不知道。任何帮助将不胜感激!

from django.conf import settings
from django.db import models

from allauth.account.models import EmailAddress
from allauth.socialaccount.models import SocialAccount

import hashlib

class UserProfile(models.Model):
class Meta:
db_table = 'user_profile'
app_label = 'iobserve'

user = models.OneToOneField(settings.AUTH_USER_MODEL, related_name='profile')

def __unicode__(self):
return "{}'s profile".format(self.user.username)

def account_verified(self):
if self.user.is_authenticated:
result = EmailAddress.objects.filter(email=self.user.email)
if len(result):
return result[0].verified
return False

def profile_image_url(self):
fb_uid = SocialAccount.objects.filter(user_id=self.user.id, provider='facebook')
if len(fb_uid):
return "http://graph.facebook.com/{}/picture?width=40&height=40".format(fb_uid[0].uid)
return "http://www.gravatar.com/avatar/{}?s=40".format(hashlib.md5(self.user.email).hexdigest())

最佳答案

您的 iobserve 应用没有任何迁移,并且您不能从未迁移的应用到已迁移的应用建立关系,例如 OneToOneField

您需要运行 manage.py makemigrations iobserve 来为 iobserve 应用程序创建初始迁移。只有当初始迁移存在时,没有任何应用标签的 manage.py makemigrations 才会为该应用创建新的迁移。

关于python - Django 1.8编程报错: relation auth_user doesn't exist when running test,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30562754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com