2014-12-01 2 views
2

하스켈에서 Scotty 프레임 워크로 REST API를 작성하고 있습니다. 나는 계속 표는 그때 사용자 fetchUserByName :: Text -> IO (Entity User)를 잡아하는 기능을 가지고하스켈에서 지속 엔터티의 필드에 액세스하는 방법

share [mkPersist sqlSettings, mkMigrate "migrateAll"] [persistLowerCase| 
User json 
    username Text 
    number Text 
    group Text Maybe 
    UniqueUsername username 
    UniqueNumber number 
    deriving(Show) 
... 
] 

로 정의했습니다. 내가 이해하지 못하는 것은 변수가 user :: Entity User 인 경우이 사용자의 사용자 이름과 같은 필드에 어떻게 액세스합니까? 나는 이것이 아주 사소한 것 같아도 나는 대답을 온라인으로 찾을 수없는 것처럼 느낀다. 아니면 내가 잘못하고있는 것일까 요? 고맙습니다.

답변

3

당신은 entityVal를 사용하여 사용자 항목을 추출 할 수 있습니다, 당신 수

print $ userGroup $ entityVal user 
(난 항상 형식의 camelcase에서 <tablename><columnname>의 형식으로 생성 된 것으로 판단) 레코드 이름을 사용하여 원하는 칼럼
관련 문제