Pentingnya Slug Field
Berguna ketika kita ingin membuat URL dengan format
Topic name biasanya diambil dari CharField, jika ingin dibuat URL, kita harus parsing manual supaya karakter-karakter non-alphanumeric hilang. Ada cara mudah dan elegan di django, yakni dengan memanfaatkan SlugField, yang secara otomatis akan menghilangkan karakter non-alphanumeric dari topic name.
Kalau sebelumnya model kita seperti ini:
kita ubah menjadi
URL lebih mudah dibentuk
Filtering juga mudah
/topic/topic-name/
Topic name biasanya diambil dari CharField, jika ingin dibuat URL, kita harus parsing manual supaya karakter-karakter non-alphanumeric hilang. Ada cara mudah dan elegan di django, yakni dengan memanfaatkan SlugField, yang secara otomatis akan menghilangkan karakter non-alphanumeric dari topic name.
Kalau sebelumnya model kita seperti ini:
class Topic(models.Model):
topic_name = models.CharField(max_length=255)
kita ubah menjadi
class Topic(models.Model):
topic_name = models.CharField(max_length=255)
topic_slug = models.SlugField(max_length=255)
URL lebih mudah dibentuk
href="{{ url 'topic' topic.topic_slug }}"
Filtering juga mudah
>>> Topic.objects.filter(topic_slug=topic_slug).filter(Published=True)
[…] Penggunaan SlugField […]
ReplyDelete