Snap: получение данных формы и «если» - PullRequest
3 голосов
/ 19 марта 2012

Кажется, я не могу понять, как получить данные формы с помощью ограбления.Я только начал изучать веб-фреймворки на Haskell, но документация немного ... недостаточна, если не сказать больше.Там нет упоминания о формах в тощей учебник ограбления на сайте оснастки.Итак, учитывая простую HTML-форму, как мне получить данные формы для обработки в моей функции обработчика?Может кто-нибудь указать мне учебник, Google просто молчит об этом?Или, может быть, короткий пример ...

Кроме того, где я могу получить информацию об условном контроле?Скажем, если я хочу условно включить определенные части HTML в мою страницу, как мне это сделать с помощью ограбления?В основном, где это «если»?

Спасибо

1 Ответ

2 голосов
/ 19 марта 2012

См. Использование пищеварительных функторов с Хейстом для хорошего урока по простым формам и рассуждений могучего байта о краже Если вы планируете использовать multipart/form-data, используйте модуль Snap.Util.FileUploads.

Вы можете использовать Splice для генерации контента на основе условия.
A Splice возвращает список Node,

mySplice = do
  -- get environment conditions
  -- condition could be passed in as a parameter 
  if condition 
     then return [] -- do nothing
     else return [TextNode "some content"] -- see Text.XmlHtml

Затем вы привяжете это соединение к тегу, используя что-то вроде:

bindSplice myTag mysplice defaultHeistState

И поместите <myTag/> в свой шаблон. Когда Heist отображает шаблон, он оценивает соединение, когда встречает тег, и вставляет значение на его место.

...