gpt4 book ai didi

python - 如何使用 Django 重命名模型?

转载 作者:行者123 更新时间:2023-12-01 13:31:48 26 4
gpt4 key购买 nike

假设我有这个模型:

class Foo(models.Model):
name = models.CharField(max_length=255)

我想重命名为 Bar .我应该采取哪些步骤?我该如何处理 The following content types are stale迅速的?

最佳答案

在我的特殊情况下是这样的:

  • 重命名模型类名及其所有引用。
  • 运行 ./manage.py makemigrations .
  • 检查您的数据库中是否有来自您的应用程序拥有的表的引用。普通引用和references via django_content_type table .相应地处理它们。
  • 检查您的数据库中是否有来自 Django 表的引用。最有可能的是:
    my_table-+-django_admin_log
    `-auth_permission-+-auth_group_permissions
    `-auth_user_user_permissions

    就我而言,我在 django_admin_log 中没有记录。 , auth_group_permissions , auth_user_user_permissions .
  • 运行 ./manage.py migrate .当它询问:
    The following content types are stale and need to be deleted:                

    myapp | foo

    Any objects related to these content types by a foreign key will also
    be deleted. Are you sure you want to delete these content types?
    If you're unsure, answer 'no'.

    Type 'yes' to continue, or 'no' to cancel:

    您可以回答 yes仅当您在 foo 中没有引用记录的记录时上面提到的三个表中的表。或者,如果失去它们对您来说不是问题。
  • 关于python - 如何使用 Django 重命名模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45651831/

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