1
# settings.py

INSTALLED_APPS = [
    # ...
    'simple_history',
    # ...
]

MIDDLEWARE = [
    # ...
    'simple_history.middleware.HistoryRequestMiddleware',
    # ...
]

楷模:

from django.db import models

from apps.companies.models import Company
from simple_history.models import HistoricalRecords

# Create your models here.
class User(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    name = models.CharField(max_length=20)

    history = HistoricalRecords()


class Contact(TimeStamp):
    name = models.CharField(max_length=100, verbose_name='Person Name')
    user = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, blank=True)
    phone_number = models.CharField(max_length=100, verbose_name='Personal Number', null=True, blank=True)
    email = models.EmailField(null=True, blank=True, verbose_name='Personal Email')
    designation = models.CharField(max_length=100)
    history = HistoricalRecords()

    def __str__(self):
        return self.name

user = User.objects.first() 无论如何,是否可以通过user

4

1 回答 1

0

django-simple-history您的问题似乎与存储库上的这个问题相似: https ://github.com/jazzband/django-simple-history/issues/684

您必须查询每个历史模型,因为它们都在单独的表中。您可以构建一种方法来自动检测哪些模型是历史模型并获取它们。

于 2021-10-07T08:42:33.533 回答