如何在django中获取对象的历史记录?

时间:2018-02-09 13:44:18

标签: python django django-models

我使用django 1.11并且我有一个书模型:

class Book(models.Model):
    user_borrowed = models.ForeignKey(User, null=True)
    name = models.CharField(max_length=100)
    description = models.TextField()
    author = models.CharField(max_length=30)
    isbn = models.CharField(max_length=80)

    def borrow_book(self, user):
        if self.user_borrowed is not None:
            return False
        self.user_borrowed = user
        self.save()

    def return_book(self):
        self.user_borrowed = None
        self.save()

它就像一个图书馆系统。我想做的就是知道哪些用户借了一本特别的书。实际上所有用户。例如,我想得到这个结果:

[
{ "username": "user_name_1", "date": "2018-02-08T14:13:22.142497"},
]

这意味着user_name_1在上述时间借用了这本书。 那怎么办呢?

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用django-simple-history,然后它将存储该模型的历史记录,您可以获得您想要的数据。 https://django-simple-history.readthedocs.io/en/latest/