Browse Source

AutoSlugFied: Allow function for populate_from.

master
Erik Stein 7 years ago
parent
commit
1dfe913923
  1. 3
      shared/utils/models/slugs.py

3
shared/utils/models/slugs.py

@ -52,6 +52,9 @@ class AutoSlugField(django_fields.SlugField):
value = getattr(model_instance, self.attname) value = getattr(model_instance, self.attname)
if not value: if not value:
if hasattr(self, 'populate_from'): if hasattr(self, 'populate_from'):
if callable(self.populate_from):
value = self.populate_from(model_instance, self)
else:
# Follow dotted path (e.g. "occupation.corporation.name") # Follow dotted path (e.g. "occupation.corporation.name")
value = reduce(lambda obj, attr: getattr(obj, attr), value = reduce(lambda obj, attr: getattr(obj, attr),
self.populate_from.split("."), model_instance) self.populate_from.split("."), model_instance)

Loading…
Cancel
Save