Play Framework и архитектура проекта Slick

Я переношу приложение с Grails на Play Framework и в настоящее время пытаюсь выяснить, как лучше всего организовать структуру проекта.

Я хочу использовать Slick Codegen вместе с Flyway для миграции, потому что я хочу отслеживать все выполняемые миграции (решение, подобное Rails Migrations, было бы идеальным).

Я вижу, что в Play Framework есть модуль Play-Slick, но из того, что я заметил, все происходит как чистая черная магия.

Я видел пример на GitHub, где Slick Modeling, Play Framework и Flyway Migrations — это 3 отдельных SBT. Модули, что имеет смысл, если мы когда-нибудь захотим отойти от Play Framework.

Теперь мои вопросы: какой подход к архитектуре для приложения Play Framework лучше всего?

Примечание. Я новичок в Play Framework и Scala.


person Driver    schedule 15.04.2016    source источник
comment
здесь есть несколько дополнительных ответов: stackoverflow.com/questions/36616810/   -  person nemoo    schedule 15.04.2016


Ответы (1)


Недавно я писал об использовании Play + slick + mysql. У Is минимальная структура для работы, но та, которую я нашел более правильной (я думаю, что этот пункт будет субъективным): http://pedrorijo.com/blog/play-slick/

или исходный код на https://github.com/pedrorijo91/play-slick3-steps

person pedrorijo91    schedule 15.04.2016
comment
Как вы справляетесь с миграциями? Создает ли Slick начальные обновления DDL и SQL для базы данных? Я ищу решение Code First, а Hibernate слишком сложен и тяжел для этой работы. - person Driver; 16.04.2016
comment
эволюции основаны на sql: github.com /pedrorijo91/play-slick3-steps/blob/master/conf/ или прочитайте его по адресу pedrorijo.com/blog/play-slick/#add-database-evolution - person pedrorijo91; 16.04.2016
comment
В порядке. В настоящее время я использую подключаемый модуль миграции базы данных Grails. grails dbm-gorm-diff, и я выполняю сгенерированный код SQL вручную в базе данных, потому что я считаю, что автоматизация — это плохо. Это сценарий, который я хотел: изменить классы модели, создать сценарий обновления SQL для текущей схемы в базе данных и выполнить его. - person Driver; 16.04.2016