1 2 3 4 5 6 7 8 9 10 11 12 | @register.filter
def leading_zeros(value, desired_digits):
"""
Given an integer, returns a string representation, padded with [desired_digits] zeros.
"""
num_zeros = int(desired_digits) - len(str(value))
padded_value = []
while num_zeros >= 1:
padded_value.append("0")
num_zeros = num_zeros - 1
padded_value.append(str(value))
return "".join(padded_value)
|
More like this
- Avoid widows using a template filter by jcroft 6 years, 2 months ago
- table with n items per row using custom modulo tag by elgreengeeto 4 years, 5 months ago
- RPN template math by durka 4 years, 6 months ago
- Template range loop by nfg 3 years, 3 months ago
- Find all links in a value and display them separatley by jcroft 6 years, 2 months ago
Comments
hey, doesn't
do the same thing?
#
Probably. And I've also been informed that you can use the string formatting built-in template tag to accomplish this:
So, yeah -- good idea, but maybe not the best way to do it. I sort of suspected there was probably a better way. :)
#
Or, without template tags:
padded_value = "%05d" % value
(for a 5 digit padded number)
#