Here they say it\'s not supported out of the box.
Do you know a way to make HTML input form fields use the \'readonly\' attribute with WTForms?
The solution is using render_kw in form field declaration.
render_kw
my_field = fields.StringField('Label', render_kw={'readonly': True})