У меня возникли проблемы с определением экземпляра FromField для моего пользовательского типа перечисления данных:Haskell PostgreSQL Простой FromField
data Role = Staff | Student deriving (Eq, Ord, Show)
Чтобы представлять Role
в моей базе данных, я буду использовать Интс могут быть добавлены 0 и 1 (более ролей позже) наиболее вероятно smallint
.
Review
используется в другом моем типе данных, который представляет собой строку в моей таблице БД:
data ReviewAssignment = ReviewAssignment
{ aID :: ID
, reviewID :: ID
, reviewerID :: ID
, revieweeID :: ID
, reviewerRole :: Role -- <-- right there
, reviewFinished :: Bool
, reviewPoints :: Float
} deriving (Show, Eq)
Это мой FromRow экземпляр для ReviewAssignment:
instance FromRow ReviewAssignment where
fromRow = ReviewAssignment <$> field <*> field <*> field <*> field <*> field <*> field <*> field
Теперь я просто отсутствую после чего я не понимаю, как это осуществить:
instance FromField Role where
fromField = undefined
Я прочитал документацию, но я до сих пор не понимаю совсем ясно, так что я прошу здесь. Я понимаю концепцию, но я не знаю, как это сделать с помощью FromField – Reygoch