-
- def add_docente(self, docente, **kargs):
- return DocenteInscripto(curso=self, docente=docente, **kargs)
-
- def add_alumno(self, alumno, **kargs):
- return AlumnoInscripto(curso=self, alumno=alumno, **kargs)
-
- def add_grupo(self, nombre, **kargs):
- return Grupo(curso=self, nombre=unicode(nombre), **kargs)
-
- def add_ejercicio(self, numero, enunciado, **kargs):
- return Ejercicio(curso=self, numero=numero, enunciado=enunciado, **kargs)
+ for a in alumnos:
+ self.add_alumno(a)
+
+ def set(self, docentes=None, ejercicios=None, alumnos=None, **kw):
+ super(Curso, self).set(**kw)
+ if docentes is not None:
+ for d in DocenteInscripto.selectBy(curso=self):
+ d.destroySelf()
+ for d in docentes:
+ self.add_docente(d)
+ if ejercicios is not None:
+ for e in Ejercicio.selectBy(curso=self):
+ e.destroySelf()
+ for (n, e) in enumerate(ejercicios):
+ self.add_ejercicio(n, e)
+ if alumnos is not None:
+ for a in AlumnoInscripto.selectBy(curso=self):
+ a.destroySelf()
+ for a in alumnos:
+ self.add_alumno(a)
+
+ def add_docente(self, docente, **kw):
+ return DocenteInscripto(curso=self, docente=docente, **kw)
+
+ def remove_docente(self, docente):
+ DocenteInscripto.pk.get(curso=self, docente=docente).destroySelf()
+
+ def add_alumno(self, alumno, **kw):
+ return AlumnoInscripto(curso=self, alumno=alumno, **kw)
+
+ def remove_alumno(self, alumno):
+ AlumnoInscripto.pk.get(curso=self, alumno=alumno).destroySelf()
+
+ def add_grupo(self, nombre, **kw):
+ return Grupo(curso=self, nombre=unicode(nombre), **kw)
+
+ def remove_grupo(self, nombre):
+ Grupo.pk.get(curso=self, nombre=nombre).destroySelf()
+
+ def add_ejercicio(self, numero, enunciado, **kw):
+ return Ejercicio(curso=self, numero=numero, enunciado=enunciado, **kw)
+
+ def remove_ejercicio(self, numero):
+ Ejercicio.pk.get(curso=self, numero=numero).destroySelf()