我是Haskell的新手,所以这可能是一个微不足道的问题。我看到一条错误消息,上面写着
Couldn't match expected type 'Data.Text.Lazy.Internal.Text'
with actual type 'Data.Text.Internal.Text'
我认为问题是实际类型是Data.Text.Text
并且它需要延迟文本。如何将一个转换为另一个?
编辑:
这是一个提供此错误的简化代码。
{-# LANGUAGE OverloadedStrings #-}
import Data.Text.Lazy.Encoding
import Network.Mail.Mime
import Yesod
data FormData = FormData { dataField :: Textarea } deriving Show
part d = Part {
partType = "text/plain; charset=utf-8"
, partEncoding = None
, partFilename = Nothing
, partContent = encodeUtf8 $ unTextarea $ dataField d
, partHeaders = []
}
main = return ()
基本上我有一个带有textarea输入元素的yesod表单,我想通过电子邮件发送textarea的内容。