如何在django中存储由零引导的整数

时间:2010-06-18 13:28:50

标签: python django django-models django-admin

我正试图在django中存储一个如下所示的数字:

000001

我的问题是,如果我在IntegerField中键入它,它会转换为“1”而不带前导零。我也尝试过使用相同结果的DecimalField。如何使用CharField存储前导零? (我需要以整数形式操纵该数字)

2 个答案:

答案 0 :(得分:17)

请勿使用前导零存储它。在输出上格式化它:

(in view: value = 1)
{{ value|stringformat:"04d" }} # displays as 0001

答案 1 :(得分:1)

我认为你应该使用CharField并做类似的事情:

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 :-)