0
votes

I am trying to make possible to place link for one application within templates of another one. So I created three vals in build.sbt:

lazy val common: Project = (project in file("modules/common"))
    .enablePlugins(PlayJava, PlayEbean, PlayScala)
    .settings(aggregateReverseRoutes := Seq(admin, web))
    .settings(routesGenerator := InjectedRoutesGenerator)

lazy val admin = (project in file("modules/admin"))
    .enablePlugins(PlayJava, PlayEbean, PlayScala)
    .dependsOn(common)

lazy val web = (project in file("modules/web"))
    .enablePlugins(PlayJava, PlayEbean, PlayScala)
    .dependsOn(common)

I renamed routes file in admin/conf and web/conf to admin.routes and web.routes respectively.

How can I place link in, say, web project to admin project? Also, should I keep plain forward routing in projects admin and web?

1

1 Answers

1
votes

There is an aggregateReverseRoutes setting that will let you do this. Just add this setting to your web project.

lazy val admin: Project = (project in file("modules/admin"))
  .enablePlugins(PlayJava, PlayEbean, PlayScala)
  .dependsOn(common)

lazy val web: Project = (project in file("modules/web"))
  .enablePlugins(PlayJava, PlayEbean, PlayScala)
  .dependsOn(common)
  .settings(aggregateReverseRoutes := Seq(admin))