【发布时间】:2015-03-18 21:59:53
【问题描述】:
我创建了一个数据库,我希望在其中有一个 [(String, [String])] 类型的字段。
share [mkPersist sqlSettings, mkMigrate "migrateAll"][persistLowerCase|
ConfigDB
numberOfParticipants Int
groupId Int
memberList [(String,[String])]
deriving Show
|]
但是,我收到一条错误消息:
尝试运行编译时代码时出现异常:无效字段类型 >"[(String,[String])]" PSFail PSFail "PSFail \"(\\"\\",\\"\\",Nothing )\"
错误似乎是由于使用元组引起的,因为 [String] 工作得很好,但是如果我写 (String, String) 编译器会告诉我:
"不在范围内:类型构造函数或类String, 也许你的意思是字符串(从 Prelude 导入)”
在 Database.Persist.Sql 我发现 (PersistFieldSql a, PersistFieldSql b) => PersistFieldSql (a, b) 是一个实例,所以它应该可以工作。
此外,导入 Data.Tuple 也无济于事。 当然,我已经导入了 Database.Persist.Sqlite。
提前致谢,
索菲亚
【问题讨论】:
标签: sql database haskell tuples persist