Hola
Estoy probando cosas con datamapper. Uso este codigo para guardar (y actualizar). Funciona bien cuando edito el nombre, pero cuando selecciono otro curso del multiselect del form añade otra relación, en lugar de borrar las existentes y guardar solo lo último que recibe
$estudiante=new Student();
$estudiante->where('id', '17')->get();
$estudiante->name=$this->input->post('nombre');
foreach ($this->input->post('curso') as $key => $value) {
$curso = new Course();
$curso->get_by_name($value);
$estudiante->save($curso);
}
Mi join table
id_student | id_course
17 1
17 2
Cuando selecciono un valor nuevo en el multiselect (y solo uno, pongamos, curso con id=3, deseleccionando lo que ya existe), hace esto
id_student | id_course
17 1
17 2
17 3
En lugar de
id_student | id_course
17 3
Que estoy haciendo mal?
Saludos y gracias!
Thanks!!