如何从(Yesod/Haskell项目)的会话中获取用户ID
伙计们,我有一个小程序,我需要从会话中提取用户的ID 我不能把它放在Text/Int中,因为它说会话带有一个键(我想是Sql键),我如何将它转换为Int以用于我的项目中的其他方法 我试图从会话中恢复ID如何从(Yesod/Haskell项目)的会话中获取用户ID,haskell,yesod,yesod-forms,Haskell,Yesod,Yesod Forms,伙计们,我有一个小程序,我需要从会话中提取用户的ID 我不能把它放在Text/Int中,因为它说会话带有一个键(我想是Sql键),我如何将它转换为Int以用于我的项目中的其他方法 我试图从会话中恢复ID getInicioR :: Handler Html getInicioR = do uid <- lookupSession "_ID" user <- runDB $ get404 uid 使用keyToValues获取值列表 例如,如果您知道
getInicioR :: Handler Html
getInicioR = do
uid <- lookupSession "_ID"
user <- runDB $ get404 uid
使用
keyToValues
获取值列表
例如,如果您知道该键是一个文本值,那么您的列表将由一个PersistText
值组成,您可以这样操作:
do uid <- lookupSession "_ID"
let pvals = keyToValues uid
[ PersistText txt ] = pvals
liftIO $ print pvals -- to see what pvals is
-- now txt is a Text value
...
douid
keyToValues :: Key record -> [PersistValue]
do uid <- lookupSession "_ID"
let pvals = keyToValues uid
[ PersistText txt ] = pvals
liftIO $ print pvals -- to see what pvals is
-- now txt is a Text value
...