如何在Django中settings.py所在的core主目录用models.py创建数据表?
解决Django中core目录models.py无法生成迁移的问题
问题原因
Django只会对INSTALLED_APPS中注册的应用的models文件进行迁移检测,你的core目录虽然包含settings.py,但默认没有被注册为Django应用,因此makemigrations命令无法识别其中的Person模型。
解决步骤
将core转为合法的Django应用
在core目录下创建apps.py文件(如果不存在),写入以下内容:from django.apps import AppConfig class CoreConfig(AppConfig): default_auto_field = 'django.db.models.BigAutoField' name = 'core'在settings.py中注册core应用
打开core/settings.py,找到INSTALLED_APPS列表,添加'core'或者更规范的'core.apps.CoreConfig':INSTALLED_APPS = [ # 其他已注册应用 'core', # 或者 'core.apps.CoreConfig' 'app1', 'app2', ]重新执行迁移命令
依次运行以下命令:python manage.py makemigrations python manage.py migrate
这样就能成功生成core目录下Person模型的数据表了。
内容的提问来源于stack exchange,提问作者Super Kai - Kazuya Ito
相关产品推荐
相关产品推荐

