Tengo dos modelos generados por andamios, estudiante y clase. Tienen una relación de muchos a muchos implementada con has_and_belongs_to_many.
me gustaría ser capaz de cambiar la cual clase it un estudiante es en, así como los que estudiantes s están tomando cada clase . Es decir, quiero modificar una estudianteclase variable (agregar y eliminar elementos de ella) y viceversa.
¿Cómo hago esto RESTfully?
Si estoy eliminando una clasede un estudiante 's clases la lista, entonces parece como si quisiera llamar actualización en mi students_controller. Si este es el caso, ¿qué debería pasar como parámetro para modificar la variable clases? Otra colección de clase es (con la adecuada clase eliminada)?
Mi otro pensamiento es simplemente llamar a alguna acción en el control de estudiantes (por ejemplo, eliminar_clase) y pasar el ID de la clase para eliminar. Esto parece sensitivo pero no RESTful.¿Cómo actualizo RESTfully una colección de has_and_belongs_to_many?
¿Cuál es la mejor manera de hacerlo?
Gracias, funcionó muy bien con dos cambios menores: 1. calling @ student.courses.destroy (params [: course_id]) me dio un ActiveRecord :: AssociationTypeMismatch ya que estaba buscando un curso y obtuve un String. Lo solucioné al encontrar el curso correcto (@ student.courses.find (params [: course_id])) y luego eliminarlo. 2. No quiero destruir el curso, simplemente elimine la asociación, así que utilicé una llamada de eliminación en lugar de destruir –
Me alegro de que funcionó. He actualizado mi ejemplo para reflejar sus cambios. – austinfromboston