Como criar uma lesma exclusiva no Django
Estou tentando criar uma lesma exclusiva no Django para que eu possa acessar uma postagem através de um URL como este:http://www.example.com/buy-a-new-bike_Boston-MA-02111_2
Os modelos relevantes:
class ZipCode(models.Model):
zipcode = models.CharField(max_length=5)
city = models.CharField(max_length=64)
statecode = models.CharField(max_length=32)
class Need(models.Model):
title = models.CharField(max_length=50)
us_zip = models.CharField(max_length=5)
slug = ?????
def get_city():
zip = ZipCode.objects.get(zipcode=self.us_zip)
city = "%s, %s %s" % (zip.city, zip.statecode, zip.zipcode)
return city
Um registro ZipCode de amostra:
CEP = "02111"cidade = "Boston"statecode = "MA"Uma amostra Precisa de registro:
title = "compre uma bicicleta nova"us_zip = "02111"slug = "compre uma bicicleta nova_Boston-MA-02111_2" (desejado)Alguma dica de como criar essa lesma exclusiva? Sua composição é:
Need.title + "_" + Need.get_city () + "_" + um número inteiro incremental opcional para torná-lo único. Todos os espaços devem ser substituídos por "-".OBSERVAÇÃO: minha lesma desejada acima pressupõe que a lesma "compre uma bicicleta nova_Boston-MA-02111" já existe, e é isso que tem o "_2" anexado a ela para torná-la única.
Eu tentei django-extensions, mas parece que só é necessário um campo ou uma tupla de campos para construir a lesma exclusiva. Eu preciso passar na função get_city (), bem como no conector "_" entre o título e a cidade. Alguém resolveu isso e está disposto a compartilhar?
Obrigado!
ATUALIZAR
Eu já estou usando django-extensions para seu UUIDField, por isso seria bom se também pudesse ser usado para o AutoSlugField!