tutorial play instalar framework example español documentacion descargar playframework routes playframework-1.x

instalar - Archivo de ruta de Playframework: rutas de producción separadas de las rutas de desarrollo



play framework tutorial español (2)

Bueno, esto no está documentado, por lo que no estoy seguro de si esto es intencionalmente posible o no, pero he encontrado una manera de hacer que esto funcione. Sin embargo, tenga en cuenta que, dado que se trata de una función no documentada, puede significar que no está intencionada y, por lo tanto, puede fallar en futuras versiones del juego.

Puede lograr lo que desea utilizando la siguiente línea en su archivo de rutas.

%{ if (play.mode.isDev()) }%

Creé una aplicación de prueba con un par de acciones.

public class Application extends Controller { public static void index() { render(); } public static void noDev() { renderText("NoDev"); } public static void noProd() { renderText("NoProd"); } }

Luego agregué lo siguiente a mi archivo de rutas

# Home page GET / Application.index # Ignore favicon requests GET /favicon.ico 404 # Map static resources from the /app/public folder to the /public path GET /public/ staticDir:public %{ if (play.mode.isDev()) }% GET /route1 Application.noDev GET /route2 Application.noDev GET /route3 Application.noDev * /{controller}/{action} {controller}.{action} %{ if (play.mode.isProd()) }% GET /route4 Application.noProd GET /route5 Application.noProd GET /route6 Application.noProd * /{controller}/{action} {controller}.{action}

Por lo tanto, puede ver que utilizando una instrucción simple if, ejecutará el siguiente grupo de rutas solo en ese modo. La sentencia if terminará cuando se encuentre la siguiente sentencia if.

Si en el modo Dev intenta acceder a route4, no podrá acceder a ella y verá la página RouteNotFound que muestra que las rutas disponibles son las que ha definido solo para Dev.

¿Hay alguna forma en Play para anotar rutas para informar que una determinada sección / grupo de rutas solo está disponible en modo dev o prod


Para Play Framework versión 2.x:

  • Necesita tener otro archivo de routes , digamos prod.routes en la raíz de su aplicación (el mismo directorio del archivo de routes original), este archivo contiene solo las rutas que desea para la producción.
  • Luego crea otro archivo .conf como prod.conf dentro de la carpeta conf .
  • Ahora este nuevo archivo conf debe contener lo siguiente:

para el framework de juego 2.4 y más reciente:

include "application.conf" play.http.router=prod.Routes

O sin un nuevo parámetro de paso de archivo .conf :

-Dplay.http.router=prod.Routes

Y si es mayor de 2.4 entonces:

include "application.conf" application.router=prod.Routes

Y cuando ejecute la producción, ejecútelo con -Dconfig.file=prod.conf