আপনার স্লগাইফাই ফাংশনটি ব্যবহার করতে হবে।
>>> from django.template.defaultfilters import slugify
>>> slugify("b b b b")
u'b-b-b-b'
>>>
পদ্ধতিটি slugifyওভাররাইড করে আপনি স্বয়ংক্রিয়ভাবে কল করতে পারেন save:
class Test(models.Model):
q = models.CharField(max_length=30)
s = models.SlugField()
def save(self, *args, **kwargs):
self.s = slugify(self.q)
super(Test, self).save(*args, **kwargs)
সচেতন যে উপরোক্ত যখন পরিবর্তনের আপনার URL কারণ হবে হউন q, ক্ষেত্র সম্পাদিত হয় যা ছিন্ন লিঙ্কগুলি সৃষ্টি করতে পারে । আপনি যখন কোনও নতুন অবজেক্ট তৈরি করবেন কেবল তখনই স্লগটি উত্পন্ন করা ভাল:
class Test(models.Model):
q = models.CharField(max_length=30)
s = models.SlugField()
def save(self, *args, **kwargs):
if not self.id:
# Newly created object, so set slug
self.s = slugify(self.q)
super(Test, self).save(*args, **kwargs)