ich in den unten kompilieren Fehler renne:Persistent select verursacht Fehler "Typ konnte nicht übereinstimmen 'BaseBackend backend0' mit 'SqlBackend'"
• Couldn't match type ‘BaseBackend backend0’ with ‘SqlBackend’
arising from a use of ‘runSqlite’
The type variable ‘backend0’ is ambiguous
• In the expression: runSqlite ":memory:"
In the expression:
runSqlite ":memory:"
$ do { records <- selectList [UserUsername ==. "abc"] [LimitTo 10];
liftIO $ print (records :: [Entity User]) }
In an equation for ‘selectAll’:
selectAll
= runSqlite ":memory:"
$ do { records <- selectList [UserUsername ==. "abc"] [LimitTo 10];
liftIO $ print (records :: [Entity User]) }
Code:
selectAll :: IO()
selectAll = runSqlite ":memory:" $ do
records <- selectList [UserUsername ==. "abc"] [LimitTo 10]
liftIO $ print (records :: [Entity User])
Having ein Blick auf die Art Signatur von runSqlite:
runSqlite
:: (MonadBaseControl IO m, MonadIO m, IsSqlBackend backend)
=> Text
-> ReaderT backend (NoLoggingT (ResourceT m)) a
-> m a
ich gehe davon brauche ich einen expliziten Typ für runSq angeben lite, obwohl ich nicht sicher bin, was ich für backend
in ReaderT backend (NoLoggingT (ResourceT m)) a
eingestellt habe?
Das sollte funktionieren, können Sie den gesamten Code veröffentlichen? – Sibi