2012-10-11 33 views
5

Acabo de comenzar a tratar de trabajar con el marco de juego e intenté comprender esta aplicación predeterminada que se obtiene al crear un nuevo proyecto.Comprender la creación de la página "Bienvenido a Play 2.0"

Por lo que tengo entendido, al cargar la página localhost, aparece una solicitud de obtención de http y se dirige al método Application.index() debido a la especificación en el archivo de rutas? En el método index() se genera una gran cantidad de código HTML y se devuelve en un objeto Result y se pasa al archivo index.scala.html que lo pasa al main.scala.html donde está rodeado de más html.

Ahora, algunas cosas son claras para mí:

  • en Application.java existe esta línea return ok(index.render("Hello World!")); índice pertenece a views.html.*; pero, ¿dónde está este paquete? Yo no lo encuentro en la API :(

  • Por qué no puedo cambiar el nombre del archivo de index.scala.html Es el nombre de una convención

  • en el archivo index.scala.html sí:??? ¿Qué @play20.welcome(message, style = "Java") hacer es lo siguiente conseguir el "Programa de Juego 2.0" sitio y otra vez -? no puedo encontrar la entrada de la documentación/API para lo PLAY20 :(

espero, alguien me puede ayudar a obtener una visión general, como yo Estoy realmente confundido por el momento ... ^^ He hecho un montón de Java, pero no hay programación web en absoluto, el por lo tanto, ¡esta mezcla de todas las diferentes tecnologías e idiomas es bastante extraña en este momento!

Respuesta

5

En el TodoList example, la raíz del sitio GET / se asigna al método Application.index(), por lo que este método crea el html que está viendo.

Todo lo que hace el controlador ocurre en esta línea: return ok(index.render("Hello World!"));. Básicamente, llama a algunas plantillas que generan html y devuelve el resultado.

  • return ok(...) se utiliza para indicar una petición tiene éxito, devolverá el código 200.
  • index.render(...) devuelve la salida HTML representado de una plantilla llamada index. El paquete utilizado aquí es views.html.* pero en realidad se refiere a views/index.scala.html. Por lo tanto, la parte index no es una convención, puede cambiar el nombre de esa parte como desee. La plantilla debe compilarse antes de que se pueda utilizar como una clase Java, por eso los nombres de los paquetes son diferentes. El marco se encarga de esto.
  • "Hello World!" es el argumento, como se especifica como parámetro del mensaje en la primera línea de index.scala.html
  • @play20.welcome(...) sólo llama a otra plantilla, un welcome page que se incluye en el marco. No es un tema para cambiar, es solo una página estática, después de eliminar esa línea de la vista puede colocar el HTML que desee.
+0

gracias! :) .. especialmente para el enlace a la página de bienvenida en GIT! – chris

Cuestiones relacionadas