django 简单历史不显示在管理员中
django simple history doesn't show in admin
我已按照 Django-simple-history 文档从管理页面显示历史记录,但不知怎的,管理页面似乎没有显示历史记录。我正在使用 Django 版本 3.1.2
这是我的管理员
from django.contrib import admin
from simple_history.admin import SimpleHistoryAdmin
from .models import Company
admin.site.register(Company, SimpleHistoryAdmin)
你可以这样试试:
假设您的 Company
模型中只有一个字段,即 name
字段,那么模型将如下所示:
models.py
from django.db import models
class Company(models.Model):
name = models.CharField(max_length=200)
现在从 simple_history.models
导入 HistoricalRecords
class 并在 Company
模型中添加历史字段。
from django.db import models
from simple_history.models import HistoricalRecords
class Company(models.Model):
name = models.CharField(max_length=200)
history = HistoricalRecords()
def __str__(self):
return self.name
现在从 simple_history.admin
中继承 SimpleHistoryAdmin
class,在 admin.py
中创建一个名为 CompanyHistoryAdmin
的 class。见下面的代码:
admin.py
from django.contrib import admin
from simple_history.admin import SimpleHistoryAdmin
from .models import Company
# Register your models here.
class CompanyHistoryAdmin(SimpleHistoryAdmin):
list_display = ['id', 'name']
history_list_display = ['status']
search_fields = ['name']
admin.site.register(Post, CompanyHistoryAdmin)
list_display
列表将以行和两列的形式显示记录,即管理部分中的 id
和 name
。
使用 search_fields
您可以通过名称或您提供的任何其他字段在管理部分中搜索记录。
history_list_display
将显示您想查看的任何记录的状态。
要查看记录的历史记录,请单击任何记录,然后单击右上角的历史记录按钮。
更多信息read the docs.
我已按照 Django-simple-history 文档从管理页面显示历史记录,但不知怎的,管理页面似乎没有显示历史记录。我正在使用 Django 版本 3.1.2
这是我的管理员
from django.contrib import admin
from simple_history.admin import SimpleHistoryAdmin
from .models import Company
admin.site.register(Company, SimpleHistoryAdmin)
你可以这样试试:
假设您的 Company
模型中只有一个字段,即 name
字段,那么模型将如下所示:
models.py
from django.db import models
class Company(models.Model):
name = models.CharField(max_length=200)
现在从 simple_history.models
导入 HistoricalRecords
class 并在 Company
模型中添加历史字段。
from django.db import models
from simple_history.models import HistoricalRecords
class Company(models.Model):
name = models.CharField(max_length=200)
history = HistoricalRecords()
def __str__(self):
return self.name
现在从 simple_history.admin
中继承 SimpleHistoryAdmin
class,在 admin.py
中创建一个名为 CompanyHistoryAdmin
的 class。见下面的代码:
admin.py
from django.contrib import admin
from simple_history.admin import SimpleHistoryAdmin
from .models import Company
# Register your models here.
class CompanyHistoryAdmin(SimpleHistoryAdmin):
list_display = ['id', 'name']
history_list_display = ['status']
search_fields = ['name']
admin.site.register(Post, CompanyHistoryAdmin)
list_display
列表将以行和两列的形式显示记录,即管理部分中的 id
和 name
。
使用 search_fields
您可以通过名称或您提供的任何其他字段在管理部分中搜索记录。
history_list_display
将显示您想查看的任何记录的状态。
要查看记录的历史记录,请单击任何记录,然后单击右上角的历史记录按钮。
更多信息read the docs.