No admin é fácil. Basta utilizar o prepopulated_fields, mas caso precise fazer na mão ou em alguma view, segue uma def que resolve o serviço:
def toSlug(value):
import unicodedata
import re
from django.utils.safestring import mark_safe
value = unicodedata.normalize('NFKD', value).encode('ascii', 'ignore')
value = unicode(re.sub('[^\w\s-]', '', value).strip().lower())
return mark_safe(re.sub('[-\s]+', '-', value))
Django 1.9
Quem sou eu
Pesquisar
Marcadores
Admin
(18)
ajax
(2)
auditoria
(1)
autenticação
(1)
change list
(1)
CKEditor
(3)
Class Based Views
(4)
ColorPicker
(1)
contrab
(2)
Dicas
(64)
django
(2)
Django 1.3
(11)
Django 1.4
(10)
Django 1.6
(6)
Django 1.7
(4)
Django 1.8
(10)
Django 1.9
(4)
Django 2.0
(1)
Django/Python
(58)
E-mail
(1)
Erros Frequentes
(19)
Facebook API
(2)
Flash
(1)
Formset
(3)
Function Based Views
(1)
Git
(2)
ImagesLoaded
(1)
Inlines
(3)
Instagram API
(1)
Instalação
(10)
Interface
(1)
Javascript
(1)
JSON
(1)
Lion
(1)
Login único
(1)
MAC
(2)
maps
(1)
Masonry
(1)
Middleware
(2)
ModelForm
(4)
MySQL
(5)
normalização
(1)
ordenação
(1)
OSX
(1)
paginação
(2)
Parser
(2)
PDF
(2)
plugins-uteis
(6)
RegEx
(1)
RSS
(1)
slugify
(1)
South
(2)
SSH
(1)
Terminal
(1)
Tradução
(2)
tutorial
(10)
Twitter API
(1)
Twitter Style Pagination
(1)
upload
(1)
Vagrant
(2)
Validação
(2)
Virtualenv
(4)
Watermark
(3)
Widgets
(1)
quinta-feira, 28 de outubro de 2010
terça-feira, 26 de outubro de 2010
Alterando o formato da data para input em pt-br no ModelForms
Para alterar o formato de digitação das datas, coisa muito comum em vários forms, sempre era feito no js ou tinha que tratar de alguma forma no POST. Utilizando o input_formats o Django resolve esse problema de uma forma mais elegante:
No forms.py do Model utilize assim:
class Classe(ModelForm):
datanascimento = forms.DateField(label=u"Nascimento", input_formats=['%d/%m/%Y'], widget=forms.DateInput(format='%d/%m/%Y'))
hasta!
No forms.py do Model utilize assim:
class Classe(ModelForm):
datanascimento = forms.DateField(label=u"Nascimento", input_formats=['%d/%m/%Y'], widget=forms.DateInput(format='%d/%m/%Y'))
hasta!
Assinar:
Postagens (Atom)