def edit_form(self, obj=None): form = super(ModelView, self).edit_form(obj) d = default[obj.name] if obj.name in default_datetime_fields: nf = DateField("value", widget=widgets.DatePickerWidget()) nf = nf.bind(form, "value") nf.data = datetime.datetime.strptime(obj.value, "%Y-%m-%d") form._fields["value"] = nf elif len(d.possible_values): choices = [(val, val) for val in d.possible_values.split("/")] nf = SelectField("Value", choices=choices) nf = nf.bind(form, "value") nf.data = obj.value form._fields["value"] = nf elif default[obj.name].type is bool: nf = SelectField("Value", choices=[("Y", "Yes"), ("N", "No")]) nf = nf.bind(form, "value") nf.data = obj.value form._fields["value"] = nf return form