class Player(models.Model):
name = models.CharField(max_length=50)
def __unicode__(self):
return self.name
class Team(models.Model):
name = models.CharField(max_length=50)
players = models.ManyToManyField(Player, related_name="teams")
def __unicode__(self):
return self.name
То есть, когда мы изменяем поле Player.name или Team.name то предыдущие значения сохранялись бы в базу.
На уровне SQL я знаю как это сделать. Например:
Есть таблицы:
Player [idPlayer, name]
Team [idTeam, name]
PlayerInTeam [idPlayerInTeam, idPlayer, idTeam] - отношение Many2Many
PlayerHistory [idPlayer, name, date]
TeamHistory [idTeam, name, date]
PlayerInTeamHistory [idPlayerInTeam, idPlayer, idTeam, date]
Таким образом можно посмотреть всю историю изменения значений таблицы.
Возникает вопрос!
Как это сделать средствами Django?