Closed ghivert closed 1 month ago
Hi!
Currently, gleam_pgo will return all rows as tuples. To be able to reuse decoders between JSON and PGO, it would be nice to let the possibility for users to return rows directly.
gleam_pgo
An example:
pub type Dummy { Dummy( id: String, dummy: Int, field: String, ) } pub fn encode(dummy: Dummy) { json.object([ #("id", json.string(dummy.id)), #("dummy", json.int(dummy.int)), #("field", json.string(dummy.field)), ]) |> json.to_string } pub fn decode(dyn: dynamic.Dynamic) { decode.decode3( Dummy, dynamic.field("id", dynamic.string), dynamic.field("dummy, dynamic.int), dynamic.field("field", dynamic.string), )(dyn) } pub fn query() { "SELECT id, dummy, field FROM dummies" |> pgo.execute(db, [], decode) }
Hi!
Currently,
gleam_pgo
will return all rows as tuples. To be able to reuse decoders between JSON and PGO, it would be nice to let the possibility for users to return rows directly.An example: