Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在创建超级用户时修复此错误?_Python_Django_Heroku - Fatal编程技术网

Python 如何在创建超级用户时修复此错误?

Python 如何在创建超级用户时修复此错误?,python,django,heroku,Python,Django,Heroku,运行此命令时,我遇到此错误: heroku run python manage.py createsuperuser 我尝试运行了makemigrations,然后运行了migrate,效果很好,但仍然出现了这个错误 您有13个未应用的迁移。您的项目可能无法正常工作,除非您为应用程序(admin、auth、contenttypes、sessions)应用迁移。 运行“python manage.py migrate”以应用它们 回溯(最近一次呼叫最后一次): 文件“/app/.heroku/p

运行此命令时,我遇到此错误:

heroku run python manage.py createsuperuser
我尝试运行了
makemigrations
,然后运行了
migrate
,效果很好,但仍然出现了这个错误

您有13个未应用的迁移。您的项目可能无法正常工作,除非您为应用程序(admin、auth、contenttypes、sessions)应用迁移。 运行“python manage.py migrate”以应用它们

回溯(最近一次呼叫最后一次): 文件“/app/.heroku/python/lib/python3.6/site packages/django/db/backends/utils.py”,执行中的第64行 返回self.cursor.execute(sql,params) 文件“/app/.heroku/python/lib/python3.6/site packages/django/db/backends/sqlite3/base.py”,第337行,在execute中 返回Database.Cursor.execute(self、query、params) sqlite3.OPERATIONALROR:没有这样的表:auth_user

编辑:

}


我认为您的设置文件也缺少从env变量读取DB config的正确配置。这就是heroku存储信息的地方。“我试着运行makemigrations,然后进行迁移”-确切地说,是如何进行的
manage.py makemigrations
应该只在开发机器上运行,但是
manage.py migrate
应该在本地和Heroku上运行。您是否在Heroku上运行过
manage.py migrate
,例如通过
Heroku run
?@Chris我这样做了:Heroku运行python manage.py makemigrations,Heroku运行python manage.py migrateAlso,正如Alex指出的,您不能在Heroku上使用SQLite。您必须使用像PostgreSQL这样的客户机-服务器数据库(开箱即用)。请回答您的问题,并向我们展示您的
设置.py
@akki的数据库部分,由于某些原因,您的数据库设置没有得到更新(错误输出中有
sqlite3.OperationalError
)。(a) 是否显示以
postgres://
开头的
数据库URL
值?(请不要在此处发布其值。该值包含您的数据库凭据。)(b)如果您运行,则从django.conf导入设置
;打印(settings.DATABASES)
您是否看到预期的
默认值
?我认为您的设置文件也缺少从env变量读取DB config的正确配置。这就是heroku存储信息的地方。“我试着运行makemigrations,然后进行迁移”-确切地说,是如何进行的
manage.py makemigrations
应该只在开发机器上运行,但是
manage.py migrate
应该在本地和Heroku上运行。您是否在Heroku上运行过
manage.py migrate
,例如通过
Heroku run
?@Chris我这样做了:Heroku运行python manage.py makemigrations,Heroku运行python manage.py migrateAlso,正如Alex指出的,您不能在Heroku上使用SQLite。您必须使用像PostgreSQL这样的客户机-服务器数据库(开箱即用)。请回答您的问题,并向我们展示您的
设置.py
@akki的数据库部分,由于某些原因,您的数据库设置没有得到更新(错误输出中有
sqlite3.OperationalError
)。(a) 是否显示以
postgres://
开头的
数据库URL
值?(请不要在此处发布其值。该值包含您的数据库凭据。)(b)如果您运行,则从django.conf导入设置
;打印(设置.数据库)
您是否看到预期的
默认值
DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.sqlite3',
    'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
import dj_database_url

db_from_env = dj_database_url.config()
DATABASES['default'].update(db_from_env)