- Автоматическое управление данными вашего веб-приложения
- Возможность использовать как в Java, так и Scala проектах (в качестве ORM для моделей используется Ebean)
- Простой в подключении, настройке, несложный API
- Гибкий:
- можно настраивать поведение через глобальные настройки
- поведение конкретной модели можно настроить через аннотации к данной модели и её полям
- при создании специфичных страниц интерфейса достаточно заменить конкретную страницу, оставив на остальных все преимущества Сапсана
- Экономный: старается не расходовать лишние такты процессора и байты оперативной памяти
- Не требует от вас подключения множества внешних библиотек
- Близок по интерфейсу к RailsAdmin
-
Для работы у вас должен быть установленный и настроенный Play Framework версии 2.1 или выше.
-
Создайте новый проект
play new example
, консоль Play спросит какой проект Вы хотите создать (Scala или Java).Сапсан может работать с обоими типами проектов, но если Вы выберите Scala то потребуется вручную подключить зависимости
javaCore
,javaJdbc
,javaEbean
в файлеproject/Build.scala
, при этом зависимостиAnorm
иjdbc
лучше отключить;а также добавить строку
ebean.default="models.*"
в файлconf/application.conf
-
Отредактируйте в новом проекте файл
project/Build.scala
и добавьте в раздел зависимостей библиотеку Сапсана:
val appDependencies = Seq(
// ...
"ru.myscala" % "sapsan_2.10" % "0.1"
)
также добавьте в этот же файл ссылку на репозиторий Сапсана:
val main = play.Project(appName, appVersion, appDependencies).settings(
resolvers += Resolver.url("SapsanAdmin GitHub Repository", url("http://rumataestorsky.github.com/releases/"))(Resolver.ivyStylePatterns)
)
и не забудьте подключить import Keys._
в этом файле (если он не подключён).
- Далее добавьте в файл
conf/routes
подключение маршрутов-> /admin sa.Routes
это лучше сделать сразу после основного маршрута "/".
Естественно, /admin
это необязательный адрес, вы можете задать более удобный для себя.
-
В конфигурационном файле вашего проекта
conf/application.conf
добавьте следующие строки:sapsan { # Название приложения, будет отображаться в заголовке админки name = "Супер-пупер" # Вести ли историю редактирования записей history = yes # Сколько записей на страницу будет помещаться в списках pagination.items_per_page = 10 }
-
Не забудьте настроить подключение к БД,
conf/application.conf
например, так:db.default { driver=org.postgresql.Driver url="postgres://user:secret@localhost/mydatabase" }
и подключить соответствующую библиотеку в
project/Build.scala
, например"postgresql" % "postgresql" % "9.1-901.jdbc4"
-
Для создания пользовательского интерфейса Сапсан использует Twitter Bootstrap 3 его необходимо скачать, распаковать и поместить в соответствующие подкаталоги
/public
вашего проекта. Если Вы не хотите делать это вручную, то может быть вам поможет этот скрипт
- Далее Вам необходимо описать модели данных (для каждой таблицы БД - свою модель). Правила описания моделей смотрите в вики Сапсана. Примеры моделей есть в демонстрационном приложении (ссылка дана ниже)
- После описания моделей запустите своё приложение, например выполнив
play run
и перейдите по адресу http://localhost:9000/admin (если вы вводилиadmin
в файлеroutes
)
- Вы можете попробовать Сапсан без установки на этом демонстрационном приложении также доступен исходный код демонстрационного приложения
- Вы можете ознакомиться с принципами работы и управления SapsanAdmin в разделе вики