X-Git-Url: https://git.llucax.com/software/sercom.git/blobdiff_plain/a8be7f414671acf0f60ee71255aea4f3415e087b..bb3a3d03bf92ef52736ad9c4c697796cc5cbd25d:/sercom/model.py?ds=sidebyside diff --git a/sercom/model.py b/sercom/model.py index efa906c..2db805a 100644 --- a/sercom/model.py +++ b/sercom/model.py @@ -159,9 +159,9 @@ class Curso(SQLObject): #{{{ def remove_docente(self, docente): if isinstance(docente, Docente): - DocenteInscripto.pk.get(curso=self, docente=docente).destroySelf() + DocenteInscripto.selectBy(curso=self, docente=docente).getOne().destroySelf() else: - DocenteInscripto.pk.get(curso=self, docenteID=docente).destroySelf() + DocenteInscripto.selectBy(curso=self, docenteID=docente).getOne().destroySelf() def add_alumno(self, alumno, **kw): if isinstance(alumno, Alumno): @@ -172,9 +172,9 @@ class Curso(SQLObject): #{{{ def remove_alumno(self, alumno): if isinstance(alumno, Alumno): - AlumnoInscripto.pk.get(curso=self, alumno=alumno).destroySelf() + AlumnoInscripto.selectBy(curso=self, alumno=alumno).getOne().destroySelf() else: - AlumnoInscripto.pk.get(curso=self, alumnoID=alumno).destroySelf() + AlumnoInscripto.selectBy(curso=self, alumnoID=alumno).getOne().destroySelf() def add_grupo(self, nombre, **kw): return Grupo(curso=self, nombre=unicode(nombre), **kw) @@ -565,8 +565,6 @@ CREATE TABLE instancia_tarea ( # Joins entregas = MultipleJoin('Entrega', joinColumn='instancia_id') correcciones = MultipleJoin('Correccion', joinColumn='instancia_id') - casos_de_prueba = RelatedJoin('CasoDePrueba', # TODO CasoInstancia -> private - addRemoveName='_caso_de_prueba') def __init__(self, tareas=(), **kw): super(InstanciaDeEntrega, self).__init__(**kw) @@ -859,6 +857,9 @@ class Correccion(SQLObject): #{{{ nota = DecimalCol(size=3, precision=1, default=None) observaciones = UnicodeCol(default=None) + def _get_entregas(self): + return list(Entrega.selectBy(instancia=self.instancia, entregador=self.entregador)) + def __repr__(self): return 'Correccion(instancia=%s, entregador=%s, entrega=%s, ' \ 'corrector=%s, asignado=%s, corregido=%s, nota=%s, ' \ @@ -868,6 +869,8 @@ class Correccion(SQLObject): #{{{ self.corregido, self.nota, self.observaciones) def shortrepr(self): + if not self.corrector: + return '%s' % self.entrega.shortrepr() return '%s,%s' % (self.entrega.shortrepr(), self.corrector.shortrepr()) #}}}