Armazenar histórico com versão do Field em um modelo do Django

Eu tenho um modelo com um campo de texto, que precisa ser versionado.

<code>class Book(models.Model):
    title = models.CharField(max_length=100)
    summary = models.TextField()
</code>

O comportamento esperado é o seguinte:

Se eu criar um novo livro com um resumo, o texto será salvo normalmenteSe o resumo for atualizado, o estado antigo precisará ser armazenado em algum lugar com um número de versão e registro de data e horaDeve ser facilmente possível consultar a versão atual, um intervalo ou versões específicasApenas o camposummary deve ser versionado, não o modelo inteiro

Como devo fazer isso?

questionAnswers(1)

yourAnswerToTheQuestion