gpt4 book ai didi

types - 将字符串转换为 UTCTime 类型

转载 作者:行者123 更新时间:2023-12-04 11:43:00 26 4
gpt4 key购买 nike

我正在写 getSitemapR使用 yesod-sitemap 生成站点地图文件的处理程序。我遇到的问题是转换 String进入 UTCTime定义见 Data.Time.Clock .黑线鳕文档说 UTCTimeRead 的一个实例typeclass,所以这就是我正在尝试的。这是我的代码。

module Handler.Root where

import Import
import Yesod.Goodies.Gravatar
import Data.Time.Format
import System.Locale
-- This is a handler function for the GET request method on the RootR
-- resource pattern. All of your resource patterns are defined in
-- config/routes
--
-- The majority of the code you will write in Yesod lives in these handler
-- functions. You can spread them across multiple files if you are so
-- inclined, or create a single monolithic file.
getRootR :: Handler RepHtml
getRootR = do
defaultLayout $ do
h2id <- lift newIdent
setTitle "Cloudrr homepage"
$(widgetFile "homepage")

gravatar :: Text -> String
gravatar email =
gravatarImg email go
where
go = GravatarOptions {
gSize = Just (Size 140)
, gDefault = Just (Identicon)
, gForceDefault = ForceDefault False
, gRating = Just (PG)
}

getSitemapR :: Handler RepXml
getSitemapR = do
sitemap [smo RootR]
where
smo = SitemapUrl SitemapR{
sitemapLoc = "http://www.cloudrr.me/sitemap.xml"
, sitemapLastMod = (read "2011-11-19 18:28:r52.607875 UTC")::UTCTime
, sitemapChangeFreq = Weekly
, priority = 0.7
}

我在关于系统编程的第 20 章中查看了我的 Real World Haskell 副本,但它没有涵盖 UTCTime在它的代码示例中,我用“haskell“将字符串转换为 UTCTime”这个词搜索了谷歌,但没有任何结果。我发现了以下 Thread在haskell-cafe 邮件列表中,因为 SitemapLastMod 无法使用不需要 Maybe UTCTime .我想我在这里犯了一个非常愚蠢的错误,但我不确定,有人可以指出我正确的方向吗?

感谢您的时间和考虑。

最佳答案

, sitemapLastMod = (read "2011-11-19 18:28:r52.607875 UTC")::UTCTime

小写 r不应该在那里。尝试
, sitemapLastMod = (read "2011-11-19 18:28:52.607875 UTC")::UTCTime

关于types - 将字符串转换为 UTCTime 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8204028/

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