Django: M2M zu site...
Verfasst: Donnerstag 19. November 2009, 09:25
Ich hab viele models die ein M2M zu sites haben. Also sowas:
Nun setzte ich zwar mit default die Site ID, aber das scheint nicht immer zu funktionieren. Denn es haben manche Einträge dennoch keine einzige site.
Dafür hab ich ein work-a-round des ungefähr so aussieht:
Die Frage ist jedoch, warum reicht default=[settings.SITE_ID] nicht???
Code: Alles auswählen
sites = models.ManyToManyField(Site, default=[settings.SITE_ID])
on_site = CurrentSiteManager('sites')
Dafür hab ich ein work-a-round des ungefähr so aussieht:
Code: Alles auswählen
def save(self, *args, **kwargs):
if self.pk == None:
super(AutoSiteM2M, self).save(*args, **kwargs)
if self.sites.count() == 0:
site = Site.objects.get_current()
self.sites.add(site)
super(AutoSiteM2M, self).save(*args, **kwargs)