Estoy habilitando una función que puede editar una entidad. Quiero rellenar el formulario con las variables del almacén de datos. ¿Cómo puedo hacerlo? Mi código no rellena el formulario:¿Cómo llenar mis variables WTForm?
if self.request.get('id'):
id = int(self.request.get('id'))
ad = Ad.get(db.Key.from_path('Ad', id))
im = ad.matched_images
editAdForm = AdForm(ad)
if str(users.get_current_user()) == str(ad.user) or users.is_current_user_admin():
self.render_jinja('edit', form_url=blobstore.create_upload_url('/addimage'),
admin=users.is_current_user_admin(),
user_url= (users.create_logout_url('/'
) if users.get_current_user() else users.create_login_url(self.request.uri)),
user= users.get_current_user(),
ad= ad,
form = editAdForm)
En lugar de eso ver este mensaje de error:
FormData debe ser un contenedor de tipo multidict que soporta el método 'GetList':
actualización
la solución consiste en rellenar el formulario como el bu ¿Me pregunto si esta es realmente la manera recomendada?
editAForm = AForm(name=article.name, title=article.title, text=article.text...)
Gracias Thomas para la solución. –
¡Genial! Estaba confundido de encontrar el punto final de form.populate_obj();) – swdev