Aber welche ist die beste?
Beispiel:
Code: Alles auswählen
class Foo(models.Model):
title = models.CharField()
slug = models.SlugField()
class FooAdmin(admin.ModelAdmin):
prepopulated_fields = {'slug': ('title',)}
Also könnte man das machen:
Code: Alles auswählen
class Foo(models.Model):
title = models.CharField()
slug = models.SlugField(null=True, blank=True)
def save(self, *args, **kwargs):
if not self.slug:
self.slug = slugify(self.title)
super(Foo, self).save(*args, **kwargs)
Also welches ist die beste Lösung? Übersehe ich was?
EDIT: Also es gibt eine allumfassende Lösung als zusätzliches Paket: django-autoslug
Aber ich möchte dafür nicht noch eine zusätzliche Abhängigkeit aufnehmen. Somit nehme ich erstmal die zweite Varianten: In save() setzten und beim slug field blank=True nutzten (allerdings nicht null=True, denn im Admin wird eh u"" gesetzt, somit bleibt es da eh nicht bei None)