Я новичок в Play и Scala (версия 2.6) и не могу понять, как заставить работать маршрутизацию простым способом.Собирая воедино примеры из документации 2.6, мне удалось создать собственный загрузчик приложений, который, как я понимаю, необходим для выполнения миграций Evolution.Пример, который я нашел, включал var router = Routes.empty. Похоже, что BuiltInComponentsFromContext требует использования маршрутизатора, но при этом, так, как я это сделал, мои маршруты теперь сломаны, и теперь все, что я получаю, это «Действие НеНашел "сообщения".
Вот мой application.conf:
play.application.loader=MyApplicationLoader
router = my.application.Router
Вот загрузчик приложений
import play.api.ApplicationLoader
import play.api.ApplicationLoader.Context
import play.api.BuiltInComponentsFromContext
import play.api.db.{Database, DBComponents, HikariCPComponents}
import play.api.db.evolutions.EvolutionsComponents
import play.api.routing.Router
import play.filters.HttpFiltersComponents
//import com.softwaremill.macwire._
class MyApplicationLoader extends ApplicationLoader {
def load(context: Context) = {
new MyComponents(context).application
}
}
class MyComponents(cntx: Context)
extends BuiltInComponentsFromContext(cntx)
with DBComponents
with EvolutionsComponents
with HikariCPComponents
with HttpFiltersComponents
{
// this will actually run the database migrations on startup
//lazy val router = Router.empty
val router = Router.empty
applicationEvolutions
}
Мне кажется, он объявил:
val router = Router.empty
Я фактически лишил законной силы любой из маршрутов, которые я объявил в моем файле conf / routs, и мне пришло в голову использовать метод Router.load, но я не могу найти пример того, как передать требуемую средуи значения конфигурации для метода.Предполагая, что я не хочу использовать статические маршруты, как мне это сделать?