I'm trying to store a number in django that looks like this:
000001
My problem is that if I type this inside an IntegerField it gets converted to "1" without the leading zeros. I've tried also with a DecimalField with the same result. How can I store the leading zeros whithout using a CharField? (I 开发者_如何学Pythonneed to manipulate that number in it's integer form)
Don't store it with the leading zeros. Format it on output instead:
(in view: value = 1)
{{ value|stringformat:"04d" }} # displays as 0001
I think you should use a CharField and do something like that :
try:
value = int(field)
# do something with value
except valueError:
# raise a ValidationError if you are in the *clean* methods of the form
# or raise an other exception
# or handle the error
# or just raise :-)
精彩评论