当有外部引用时,如何重命名 Django 模型的文件夹?
Posted
技术标签:
【中文标题】当有外部引用时,如何重命名 Django 模型的文件夹?【英文标题】:How to rename the folder of a Django model when there are external references to it? 【发布时间】:2022-01-22 06:10:52 【问题描述】:最近我重命名了一个 Django 模型及其父文件夹:
来自
input_source_type/
models.py
到
event_source_type/
models.py
models.py
包含 InputSourceType
,它也重命名为 EventSourceType
。
(在system
文件夹中)中的另一个模型在其迁移(0001_initial.py)中引用了此模型:
class Migration(migrations.Migration):
initial = True
dependencies = [
('admin_input_source_type', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='Systm',
...
当我运行python manage.py makemigrations
时,我得到了
django.db.migrations.exceptions.NodeNotFoundError: Migration admin_system.0001_initial dependencies reference nonexistent parent node ('admin_input_source_type', '0001_initial')
这是正确的,因为我不再使用 admin_input_source_type
。
我不想手动更改迁移,在这种情况下,Django 的方式是什么? 谢谢!
【问题讨论】:
您是否更新了settings.py
文件中installed_apps
列表中的名称?
嗨@RifatRakib,是的,我做到了。
【参考方案1】:
这个link 应该会有所帮助,但我建议您创建一个新应用以避免许多敏感问题。
【讨论】:
以上是关于当有外部引用时,如何重命名 Django 模型的文件夹?的主要内容,如果未能解决你的问题,请参考以下文章
如何重命名从 Django 模型自动生成的 GraphQL 类型字段?