Я действительно изо всех сил пытаюсь понять веб-фреймворки Haskell.Мое большое зависание связано с этой param'
функцией, которая, кажется, принимает только один параметр в виде строки и возвращает параметр формы (и параметр строки запроса ???).
get "login"
loginView
post "login" $ do
email <- param' "email"
pass <- param' "password"
text ( email <> " " <> pass)
Все примеры, которые я вижу, обрабатывают маршруты в основной функции, однако я хотел бы создать контроллеры, подобные обработчикам.Я не могу найти способ использовать функцию магического параметра вне контекста основного приложения.Есть ли способ сделать это?Также эта функция 'param' принимает неявный параметр (как в scala).Я не понимаю, как он может получить параметры формы с одним аргументом.
Вот пример того, что нравится делать id.
LoginHandlers.hs
getLogin :: ???
getLogin = loginView
postLogin :: ???
postLogin = do
email <- param' "email"
pass <- param' "password"
text ( email <> " " <> pass )
Main.hs
app :: SpockM () MySession MyAppState ()
app = do
get "login" $
getLogin
post "login" $
postLogin
Также возможно получить параметры в виде карты вместо того, чтобы проходить один за другим через функцию param '?