Custom widget initial value

I do not see a value attribute on your input element to render the value of the widget.

If you look at the input.html template in Django, you’ll see:

{% if widget.value != None %} value="{{ widget.value|stringformat:'s' }}"{% endif %}