Dudas de cakephp » dudas

Guardar varios registros

(5 mensajes)
  1. ivablan
    Miembro

    Buenas,

    Soy nuevo en este framework y la verdad que me esta dando unos pocos problemas. Mi principal duda es la siguiente. Estoy haciendo una aplicacion que se encarga de la matriculacion de alumnos, por lo que en la vista le muestro una lista de asignaturas, para que el alumnos elija las que se matricula. Mi problema viene porque no se como hay que hacer para poder guardar varios registros con el cakePHP de una sola vez, he probado a hacer un bucle como he visto en varios sitios de internet, pero el problema es que no se donde me guardan los datos que recoge de la vista, si estan en $this->data o donde.

    Gracias

    Publicado hace 2 years #
  2. bernal
    Maestro de Llaves

    Antes de nada bienvenido al foro, gracias por participar y plantearnos tus dudas.

    En los formularios creados con cakephp, siempre se pasan los datos en la variable, $this->data, como bien comentabas arriba.

    Esta variable será un array, que tendrá la siguiente forma

    $this->data['Modelo']['campo1']
    $this->data['Modelo']['campo2']
    $this->data['Modelo']['campo3']
    $this->data['Modelo']['campo4']

    El modelo que aparezca será el modelo que se le pase como parámetro al crear el formulario.

    Existe la posibilidad de cambiar la forma del array, indicando en cada campo del formulario, aparte del nombre del campo, el modelo al que pertenece.

    Me explico. En tu caso igual pides en el formulario, el nombre del alumno y las asignaturas en las que se matricula, en ese caso el formulario sería algo así:

    $form->createForm('Alumno');
    $form->input('nombre'); //'Alumno.nombre'
    $form->input('apellidos'); //'Alumno.apellidos'
    ...

    $form->input('Asignatura.nombre_1'); //Asignatura.nombre_1
    ,,,

    Así sólo tendrías que guardar los datos del alumno, $this->Alumno->save($this->data['Alumno'] y hacer un bucle con todas las asignaturas para saber en cuales está matriculado y guardarlas una a una.

    De todas formas, existe una función cakephp, debug();, que recibe como parámetro el nombre de una variable y la saca por pantalla formateada, con esto puedes ver lo que se le pasa en la variable $this->data "debug($this->data);"

    Un saludo.

    Publicado hace 2 years #
  3. ivablan
    Miembro

    Ok muchas gracias por la información, gracias a eso ya hemos podido guardar los datos y poder seguir con la aplicación.

    Publicado hace 2 years #
  4. andrea84
    Miembro

    como hago para guardar un registro de notas, en donde aparece el nombre de la materia, el profesor y el listado de alumnos, y esto se debe guardar en varios registros. ( Nota por alumnbo)

    Publicado hace 1 year #
  5. nuria
    Maestro de Llaves

    Andrea84, ya tienes modeladadas las entidades y relaciones?

    Publicado hace 1 year #

RSS feed for this topic

Responder

Marcas permitidas: BBcode a blockquote code em strong ul ol li img font strike center u hr.
También puedes poner código entre comillas simples ( ` ).


Clickcha - The One-click Captcha