Управление состоянием со скалатрой - PullRequest
2 голосов
/ 28 сентября 2011

Я понимаю, что Scalatra - это легковесная структура. Тем не менее, мне интересно, есть ли какие-нибудь хитрости для управления небольшим количеством государства. У меня есть форма с текстовой областью и несколькими флажками. Например, предположим, что текстовая область содержит математическое уравнение и флажки некоторых дополнительных параметров. Когда я отправляю (method = POST), я хотел бы отобразить результат под формой, но сохранить те же параметры (тот же текст в текстовой области, отмечены те же флажки).

Есть ли хороший способ сделать это? Или мне нужно вручную устанавливать значения при генерации HTML? В настоящее время я генерирую HTML с использованием Jade.

1 Ответ

5 голосов
/ 28 сентября 2011

Сделайте это на стороне сервера с ресурсом, возвращающим JSON, и вызывайте его динамически, используя JavaScript XHR.

Нет необходимости в состоянии!Уходи, Зло, Состояние!

РЕДАКТИРОВАТЬ

~ Немного больше объяснений ~

  1. Вы создаете веб-сервис, который принимает параметр вычисленияв качестве входных данных (используя? = в URL с GET или, что лучше, с использованием полезной нагрузки JSON с POST), служба выполняет вычисления и возвращает JSON-представление результата

  2. Вы называете эту скалатрувеб-сервис, используя AJAX из вашего веб-приложения, и вы обновляете содержимое веб-страницы, используя результат JSON, возвращаемый веб-сервером

Если вы еще мало знаете об AJAX,читайте учебники, и я думаю, вы лучше поймете, что я имею в виду.Вы также можете найти пример ресурса Scalatra, который возвращает представление JSON (используя lift-json ie)

В качестве примечания , вы можете взглянуть на Боулера: http://www.bowlerframework.org, которые облегчают разработку REST на скалатре.

...