Библиотека форм подходит для Snap и Heist

Я ищу библиотеку, которая помогает мне создавать формы, используя Snap и Heist. Я не знаю "благословенной" библиотеки форм для Snap, и ни одна из блуждающих библиотек на Hackage, похоже, не особенно подходит для декларативного характера шаблонов Heist.

Так как Heist очень похож на систему шаблонов, используемую веб-фреймворком Lift, мне было интересно, есть ли что-то, что могло бы дать мне такую ​​же поддержку форм, как там. Если вы не знакомы с ним, это будет выглядеть примерно так, если перевести на Heist:

<div class="some-div-in-a-heist-template">
  <my-form-splice>
    Name: <form-input field="name"/>
    <form-error field="name">Errors: <error-string/></form-error>
    Password: <form-input field="password"/>
    <!-- etc -->
    <form-submit/>
  </my-form-splice>
</div>

Есть ли доступные библиотеки, которые можно склеить, чтобы получить поддержку для чего-то подобного?

1 ответ

Решение

Есть библиотека обработки форм, называемая пищеварительными функторами. Это позволяет создавать соответствие между формами и структурами данных Haskell в аппликативном стиле. Это может обеспечить то, что вы ищете. Поскольку Heist предоставляет вам произвольные манипуляции с DOM, вы должны иметь возможность реализовать остальное как библиотеку соединений и связанных функций. Насколько мне известно, сегодня не существует подобной библиотеки.

Другие вопросы по тегам