¿Cómo puedo acceder a un parámetro enviado a través de la URL dentro de mis archivos de vista en CakePHP?

StackOverflow https://stackoverflow.com/questions/234949

  •  04-07-2019
  •  | 
  •  

Pregunta

Soy nuevo en CakePHP pero no he tenido en cuenta sus preguntas frecuentes y guías. Esto es tan simple que no debo pensar con claridad:

¿Cómo puedo acceder a un parámetro enviado a través de la URL dentro de mis archivos de vista?

Ejemplo: http://example.com/view/6

¿Cómo tomaría ese parámetro (" 6 ") y lo pasaría por el controlador a otra página de vista?

Si eso es demasiado complejo para una respuesta rápida, ¿cómo puedo hacer referencia al 6 dentro de la página de visualización? El 6 en esta situación es el " Id " valor en mi base de datos, y necesito establecerlo como el "padre" -

Gracias

¿Fue útil?

Solución

La URL, tal como la tiene, llamará al método 6 () de su ViewController, que no es un nombre de método válido. Puede que tenga que jugar con sus rutas para que funcione.

Si no desea configurar sus rutas, necesitará el controlador en la URL, así:

http://example.com/thinger/view/6

que llamará a thingerControllerObject- > view (" 6 ") . Si desea " / ver / " para ir a un método diferente, edite las rutas. Ver:

Otros consejos

Los parámetros se pueden recuperar de esta manera

$this->params['pass']

Devuelve una matriz (indexada numéricamente) de parámetros de URL después de la Acción.

// URL: /posts/view/12/print/narrow
Array
(
    [0] => 12
    [1] => print
    [2] => narrow
)

Para acceder al parámetro en su vista , busque en $this->params

Use el siguiente código en el archivo de vista:

$url=Router::url($this->here, true);
$url_arr=explode("/",$url);

Para ver el contenido de $ url explotado, simplemente imprímalo usando pr () como se muestra a continuación:

pr($url_arr);

Imprimirá una matriz asociativa, por lo que puede acceder a cualquier número particular de parámetros enviados a través de url.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top