gpt4 book ai didi

haskell - Haskell 文件中如何使用翻译后的消息?

转载 作者:行者123 更新时间:2023-12-02 16:06:12 25 4
gpt4 key购买 nike

我在互联网、Yesod Web 电子书和其他教程( Yesod Tutorial )中进行了搜索,但我无法澄清这个问题。我正在使用脚手架网站。

我有一个处理程序,它内部返回一个值,如果用户已通过身份验证,则返回电子邮件,如果未通过身份验证,则返回一个字符串。我想要的是返回本地化消息而不是字符串“(未知用户 ID)”。我的问题是使用消息文件中的值(例如 MsgHello),如果我这样做,它会返回如下错误:

Couldn't match expected type AppMessage' with actual typeText'

我尝试过使用 (show MsgHello)(pack MsgHello),甚至调用 msg <- getMessageRender 但我无法做我期望的事。如果您有任何建议,欢迎提出。

谢谢!!

PD:这是我正在处理的代码的一部分,行:

getUserProfileR :: Handler RepHtml
getUserProfileR = do
maid <- maybeAuth
let user = case maid of
Nothing -> "(Unknown User ID)"
Just (Entity _ u) -> userEmail u
defaultLayout $ do
setTitleI MsgUserProfile
$(widgetFile "nhUserProfile")

最佳答案

感谢 Tickhon Jelvis 指出这些网页,我也找到了这个:Poly Hamlet i18n我在那里能够找到问题的解决方案。

所以,如果我想使用本地化消息,我会这样做:

getUserProfileR :: Handler RepHtml
getUserProfileR = do
maid <- maybeAuth
msg <- getRenderMessage
let user = case maid of
Nothing -> msg MsgNoUser --"(Unknown User ID)"
Just (Entity _ u) -> userEmail u
defaultLayout $ do
setTitleI MsgUserProfile
$(widgetFile "nhUserProfile")

还请记住,有一个辅助函数“setTitleI”,它直接获取 Msg 值并避免使用“msg MsgThisPageTitle”

关于haskell - Haskell 文件中如何使用翻译后的消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15549956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com