您的位置:

报错TypeError("%(class)s must be added with %(class)s" % {"class": pretty_name(self)})的解决

  发布时间:2023-03-30 16:49:15
报错的原因这个错误通常是由于在Django中使用了一个模型类而没有将其添加到Django的Admin后台中导致的。Django的Admin后台需要通过注册模型类才能对这个模型进行管理。你可以通过在admin.py文件中注册模型类解决这个问题,示例如下只要在你的app的admin.py 中进行register 注册一下你的模型即可。

报错的原因

这个错误通常是由于在Django中使用了一个模型类(model class)而没有将其添加到Django的Admin后台中导致的。Django的Admin后台需要通过注册模型类才能对这个模型进行管理。

你可以通过在admin.py文件中注册模型类解决这个问题,示例如下


from django.contrib import admin
from .models import MyModel

admin.site.register(MyModel)

只要在你的app的admin.py 中进行register 注册一下你的模型即可。

如何解决

解决这个错误的方法很简单,只需要在Django的admin.py文件中注册你的模型类即可。

你需要做的是在你的应用程序的admin.py文件中引入你的模型类,并使用Django的admin.site.register()方法将其注册。


from django.contrib import admin
from .models import MyModel

admin.site.register(MyModel)

确保你已经将类型导入到admin.py,并使用 admin.site.register(MyModel) 对模型进行注册就可以了。

使用例子

举个例子, 如果你有一个模型类叫做 `MyModel` 定义在 `models.py` 中,

你可以在你的应用程序的admin.py文件中添加如下代码来注册这个模型类


from django.contrib import admin
from .models import MyModel

admin.site.register(MyModel)

这样你就可以在Django管理后台中管理MyModel了。