您好我有一些问题需要添加django-reversion和django-reversion-compare模块。
我创建了新项目,我希望用django-reversion跟踪user_auth日志更改(在使用django-reversion注册用户模型之后我想使用django-reversion-compare)。
from django.contrib import admin
from django.contrib.auth.models import User
from reversion.admin import VersionAdmin
@admin.register(User)
class UserModelAdmin(VersionAdmin):
pass
当我想注册模型用户时我收到了错误
django.contrib.admin.sites.AlreadyRegistered: The model User is already registered
如何使用django-reversion和django-reversion-与用户模型进行比较?
答案 0 :(得分:0)
auth.User模型已在django admin中注册,这就是您看到错误的原因。为避免这种情况,您有两种选择:
一个。取消注册用户管理员,然后再次将其注册为VersionAdmin:类似这样的内容:
from django.contrib import admin
from django.contrib.auth.models import User
from reversion.admin import VersionAdmin
admin.site.unregister(User)
admin.site.register(User, VersionAdmin)
B中。使用django-reversion(https://django-reversion.readthedocs.io/en/stable/api.html#registration-api)的注册API来注册模型而无需修改管理员,例如:
import reversion
from django.contrib.auth.models import User
reversion.register(User)