8 Mayıs 2009, Cuma
Django nasıl bir sülük oluşturabilirim?
Django bir SlugField oluşturmak için çalışıyorum.
Bu basit bir model oluşturdum:
from django.db import models
class test(models.Model):
q = models.CharField(max_length=30)
s = models.SlugField()
Ben o zaman bunu:
>>> from mysite.books.models import test
>>> t=test(q="aa a a a", s="b b b b")
>>> t.s
'b b b b'
>>> t.save()
>>> t.s
'b b b b'
>>>
Bekliyor b-b-b-b ediyordum
CEVAP
8 Mayıs 2009, Cuma
Slugify işlevini kullanmanız gerekir.
>>> from django.template.defaultfilters import slugify
>>> slugify("b b b b")
u'b-b-b-b'
>>>
save
yöntem geçersiz kılma slugify
otomatik olarak arayabilirsiniz:
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)
Yukarıdaki URL 13 ** q
saha düzenlendiğinde değiştirmek için neden olacaktır. Slug yeni bir nesne oluşturduğunuzda: sadece bir kez oluşturmak için tercih olabilir
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)
Bunu Paylaş:
Nasıl JavaScript iki boyutlu bir dizi ...
Nasıl Objective-C temsilciler oluştura...
Nasıl SVN bir şube oluşturabilirim?...
Nasıl temel bir UİButton programlı olu...
Django hata ayıklama nasıl, iyi mi?...