2016-03-30 7 views
-1

Ich benutze postgresql-einfach in haskell. Ich habe einige Fehler, weil eines der Felder von psql Typ "macaddr" in "Daten" nicht für To/FromJson und FromField implementiert ist. Ich kann nicht herausfinden, wie ich es umsetzen soll. Deine Vorschläge?Mac-Adresse Datentyp in Postgresql (einfach) und Haskell

data MyData = MyData { 
    var1 :: Int, 
    var2 :: String, 
    var3 :: TypeInfo -- in psql it's "var3 macaddr" 
    } 
+0

gibt es eine ['macaddr :: TypeInfo'] (https://hackage.haskell.org/package/postgresql-simple-0.5.1.2/docs/Database-PostgreSQL-Simple-TypeInfo-Static.html#macaddr) und Sie sollten die [Quellen hier] verwenden können (https://hackage.haskell.org/package/postgresql-simple-0.5.1.2/docs/src/Database-PostgreSQL-Simple-FromField.html#line- 455) um einen Datentyp mit 'FromField'-Instanz dafür zu erstellen (vielleicht solltest du danach eine Pull-Anfrage in Betracht ziehen) – Carsten

+0

@Carsten, wie benutze ich es in meinem Fall? –

Antwort

0

Um TypeInfo mit JSON zu verwenden, müssen Sie es bestimmt typeclasses, wie ToJSON und FromJSON in diesem Fall zu implementieren. Postgresql-simple verwendet das Aeson-Paket, das über die Dokumentation here verfügt, über welche Typklassen Sie Ihre Daten implementieren müssen. Es sieht aus wie TypeInfo implementiert bereits die Show Klasse, die praktisch ist. Hier ist eine Seite über instance declarations in Haskell, mit der vorhandene Typen vorhandene Klassen implementieren können.

+0

wie genau implementieren sie? –

Verwandte Themen