Pentingnya Slug Field

Berguna ketika kita ingin membuat URL dengan format
/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)

Comments

Post a Comment

Popular posts from this blog

Adding Image Alternate Text into WordPress Image Attachment using python-wordpress-xmlrpc Library

Keutamaan Tidur yang Sedikit Menurut para Ulama

Kisah Nabi Uzair a.s.