vista una pasar net mvc entre datos controladores controlador busqueda asp model-view-controller playframework url-routing

model view controller - una - Marco Play 2.0-Parámetros POST



pasar datos entre controladores mvc (2)

Estoy tratando de POSTAR parámetros a Acción, y escribí en las rutas:

# Home page GET / controllers.Application.index() POST /login/name:/password: controllers.Application.login(name, password)

y tengo una acción

public static Result login(String name, String password) { return ok(name + " " + password); }

mi forma es

<form action="/login" method="post"> <input name="name" type="text" id="name"> <input name="password" type="password" id="password"> <input type="submit" value="Login"> </form>

Y no funciona

Para la solicitud ''POST /login'' [Missing parameter: name]

¿Qué estoy haciendo mal?


su ruta no debe incluir partes dinámicas (nombre, contraseña) ya que los datos están en el cuerpo y no en la url


Simplemente cambie la ruta a lo siguiente:

POST /login controllers.Application.login(name, password)

Al NO incluir los nombres dinámicos (: nombre y contraseña) en la ruta de enrutamiento, se asume que las variables provienen de la solicitud (IE: sus entradas html)

El error que está recibiendo indica que el nombre y la contraseña no aparecen en la ruta de la url ... lo cual es correcto porque la ruta que especificó en sus rutas indica que la ruta debería verse más o menos así:

/ login / myname / mypassword

Consulte http://www.playframework.org/documentation/2.0.1/JavaRouting y mire la sección llamada "Método generador de llamada a la acción"