campo @ManyToMany não é salvo ao usar o Django admin

Estou com um problema estranho, que espero que alguém aqui possa esclarece

Estou substituindo o método save () de um modelo para adicionar alguns valores a um campo ManyToMany após executar super (). Meu problema é que, quando estou salvando no Django admin, os valores parecem ser adicionados ao relacionamento, mas ficam vazios novament

Se eu fizer isso a partir demanage.py shell funciona sem problemas.

Coloquei duas declarações de impressão lá e elas produzem exatamente a mesma saída, independentemente de eu estar executando através do Django admin ou via shel

class Store(models.Model):
    holidays = models.ManyToManyField(StoreHoliday, blank=True)
    copy_holidays_from = models.ForeignKey('Store', blank=True, null=True)

    def save(self):
        print '====  BEFORE SAVE:', self.holidays.all()
        super(Store, self).save()
        self.copy_holidays()
        print '====  AFTER SAVE:', self.holidays.all()

    def copy_holidays(self):
        if self.pk and self.copy_holidays_from:
            self.holidays.clear()
            for h in self.copy_holidays_from.holidays.all():
                self.holidays.add( h )

Esta é a saída doprint afirmações

====  BEFORE SAVE: []
====  AFTER SAVE: [<StoreHoliday: 10 Mar 2010, Chuck Norris birthday (Closed)>]

Alguém tem alguma sugestão sobre o que pode estar causando isso?

Editar Todas as alterações manuais na relação m2m em save () parecem ser descartadas pelo Django ao salvar através da interface de administração. Isso está relacionado a como ele processa o formulário?

questionAnswers(5)

yourAnswerToTheQuestion