2016-04-15 3 views
0

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

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

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

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

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

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

+0

есть некоторые дополнительные ansers здесь: Http: // stackoverflow.com/questions/36616810/play-framework-2-5-x-scala-slick-implementation-style – nemoo

ответ

0

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

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

+0

Как вы обрабатываете миграцию? Создает ли Slick исходные DDL и SQL-обновления для базы данных? Я ищу решение Code First, а Hibernate просто слишком сложна и тяжела для работы. – Driver

+0

эволюции основаны на sql: https://github.com/pedrorijo91/play-slick3-steps/blob/master/conf/evolutions/default/1.sql или читайте на http://pedrorijo.com/blog/play -slick/# add-database-evolution – pedrorijo91

+0

Хорошо. В настоящее время я использую плагин миграции данных Grails. 'grails dbm-gorm-diff', и я запускаю сгенерированный код SQL вручную в базе данных, потому что считаю, что автоматизация плохая. Это сценарий, который мне нужен: измените классы модели, сгенерируйте сценарий обновления SQL в соответствии с текущей схемой в базе данных и выполните ее – Driver