За кулисами скалатра использует круговое движение? - PullRequest
6 голосов
/ 30 октября 2010

Использует ли скалатра диафрагма за кадром (или наоборот)? Каковы основные различия между ними, и какой из них вы бы использовали?

Обе рамки вдохновлены Sinatra и с первого взгляда выглядят одинаково.

Запрос маршрутизации со скалатрой:

class ScalatraExample extends ScalatraServlet {

get("/date/:year/:month/:day") {
  <ul>
    <li>Year: {params("year")}</li>
    <li>Month: {params("month")}</li>
    <li>Day: {params("day")}</li>
  </ul>
}

Образец кода в круговой системе:

class Main extends RequestRouter {

get("/posts/:id") = "Post #" + uri("id")

}
}

1 Ответ

4 голосов
/ 01 ноября 2010

Росс А. Бейкер, один из разработчиков Scalatra, недавно прокомментировал разницу между Circu, flex и Scalatra:

Внешне они очень похожи, хотя я думаю, что у каждого есть свои сильные стороны. Вот некоторые различия, которые я вижу:

Шаблонирование: Scalatra интегрируется с Scalate, Circumflex интегрируется с Freemarker.

Маршрутизация: Circumflex имеет более хороший сахар для соответствия заголовка, но Scalatra позволяет вы подходите по произвольным логическим значениям (т.е. глобальный флаг для обслуживания сайта)

ORM: у Circumflex есть одна, Scalatra не делает. Я знаю о пользователях Scalatra используя Squeryl, Querulous, Scala-Query, ORMBroker и, да, Circumflex-ORM. Эти интеграции тривиальны, и я Предположим, также будет тривиальным с Метасимвол.

Auth: Scalatra имеет модуль авторизации в Circumflex делает свой последний снимок нет.

i18n: в Circumflex есть сахар для сообщения связки, Скалатра нет.

Тестирование: Скалатра также включает в себя хороший DSL для тестирования; Я не в курсе ничего похожего на Circumflex.

...