2012-04-17 12 views
6

Ho bisogno di creare una tabella con una colonna modificabile. Ogni riga è un record separato. Voglio essere in grado di visualizzare centinaia di record, apportare modifiche e quindi inviarli di nuovo al server per l'aggiornamento. Non sono sicuro che questo sia realmente supportato dall'infrastruttura dei moduli.Tabella editabile Yesod

C'è un modo per rendere una forma ripetibile tale da ottenere una lista di risultati? Questa sembra essere la soluzione più vicina che possa immaginare senza scrivere la mia in javascript. Qualsiasi idea su questo sarebbe gradita.

+0

Le modifiche che verranno eseguite comprendono inserimento, eliminazione e riordino? Se puoi fare a meno di queste cose, implementare questo * potrebbe * essere abbastanza semplice. Se hai bisogno di queste cose, hai quasi certamente bisogno di JavaScript per un'esperienza utente fluida (JQuery ha alcuni suggerimenti per aiutarti con questo genere di cose) e la serializzazione da e verso i moduli Yesod potrebbe complicarsi. –

risposta

1

Non reinventare la ruota. Basta usare una delle griglie js complete come jqgrid o extjs se si desidera il pacchetto completo di componenti dell'interfaccia utente. Uso jqgrid con yesod, modifica righe sia in griglia che in pannello esterno e invio le modifiche.

Penso che il problema con il tuo approccio è che hai trovato il tuo martello (yesod forma libreria) e ora cerchi un chiodo. Non devi usare ogni bit di yesod solo perché è lì.

+0

In realtà la griglia di dati che utilizzo è una versione modificata di editablegrid. Mi chiedevo solo se le forme di haskell lo avessero supportato. –

+0

Se la griglia può essere inoltrata per posta, allora i moduli yesod possono molto probabilmente elaborare l'input. Ma perderai la maggior parte delle loro funzionalità (rendering, convalida dei dati, ecc.). –