2017-03-29 6 views
1

In einem Yesod-Gerüstprojekt habe ich eine neue Route und einen neuen Handler hinzugefügt.Yesod: Nicht erschöpfende Muster in der Funktion isAuthorized

Mein Fehler ist folgende:

29/Mar/2017:11:25:22 +0200 [Error#yesod-core] Foundation.hs:(137,5)-(144,45): Non-exhaustive patterns in function isAuthorized 
@(yesod-core-1.4.32-6HthMZNCl0sEMRz6GJ4QO1:Yesod.Core.Class.Yesod ./Yesod/Core/Class/Yesod.hs:693:5) 
29/Mar/2017:11:25:22 +0200 [Debug#SQL] SELECT `ident`,`password` FROM `user` WHERE `id`=? ; [PersistInt64 1] 

Wie kann ich es lösen?

Antwort

3

Es ist notwendig, die Foundation.hs Datei, die Aufnahme der neuen Route zu Berechtigungen zu ändern:

-- Routes not requiring authentication. 
isAuthorized (AuthR _) _ = return Authorized 
isAuthorized CommentR _ = return Authorized 
isAuthorized HomeR _ = return Authorized 
isAuthorized FaviconR _ = return Authorized 
isAuthorized RobotsR _ = return Authorized 
isAuthorized (StaticR _) _ = return Authorized 
isAuthorized TestR _ = return Authorized 

isAuthorized ProfileR _ = isAuthenticated