2012-04-17 13 views
6

Necesito hacer una tabla con una columna editable. Cada fila es un registro separado. Quiero poder mostrar cientos de registros, realizar ediciones en ellos y luego enviarlos de vuelta al servidor para su actualización. No estoy seguro de que esto realmente sea compatible con la infraestructura de formularios.Yesod Editable Table

¿Hay alguna manera de hacer una forma repetible para obtener una lista de resultados? Esta parece ser la solución más cercana que puedo imaginar sin escribir la mía en javascript. Cualquier idea sobre esto sería bienvenida.

+0

¿Las ediciones que llevará a cabo incluyen inserción, eliminación y reordenación? Si puede prescindir de estas cosas, entonces implementar esto * podría * ser bastante simple. Si necesita estas cosas, es casi seguro que necesita un poco de JavaScript para una experiencia de usuario fluida (JQuery tiene algunos complementos para ayudar con este tipo de cosas), y la serialización desde y hacia los formularios Yesod podría complicarse. –

Respuesta

1

No reinventar la rueda. Simplemente use una de las cuadrículas js completas como jqgrid o extjs si desea el paquete completo de componentes de la interfaz de usuario. Utilizo jqgrid con yesod, edito las filas tanto en la grilla como en el panel exterior y vuelvo a enviar los cambios.

Creo que el problema con su enfoque es que encontró su martillo (biblioteca de formularios de yesod) y ahora está buscando un clavo. No tiene que usar cada bit de yesod solo porque está allí.

+0

En realidad, la cuadrícula de datos que uso es una versión modificada de editablegrid. Me preguntaba si las formas de Haskell respaldaban esto. –

+0

Si su grilla puede enviar de vuelta por correo, entonces es muy probable que los formularios yesod procesen la entrada. Pero perderá la mayor parte de su funcionalidad (procesamiento, validación de datos, etc.). –