From 9e10814cf91810a6e1554d9808a49f744ccb6310 Mon Sep 17 00:00:00 2001 From: FranAnillo <60961813+FranAnillo@users.noreply.github.com> Date: Tue, 7 Dec 2021 17:29:28 +0100 Subject: [PATCH 1/2] =?UTF-8?q?Implementaci=C3=B3n=20de=20modelos=20de=20v?= =?UTF-8?q?otaciones=20binarias?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- decide/voting/models.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/decide/voting/models.py b/decide/voting/models.py index a10ab2bcb6..d414c38a1f 100644 --- a/decide/voting/models.py +++ b/decide/voting/models.py @@ -6,6 +6,27 @@ from base import mods from base.models import Auth, Key +#Votaciones binarias + +#Modelo votación binaria +class VotacionBinaria(models.Model): + id = models.AutoField(primary_key=True) + titulo = models.CharField(max_length=60) + descripcion = models.TextField() + + def str(self): + return self.titulo + + +#Modelo respuesta binaria +class RespuestaBinaria(models.Model): + id = models.AutoField(primary_key=True) + votacionBinaria = models.ForeignKey(VotacionBinaria,on_delete = models.CASCADE) + respuesta = models.BooleanField(choices =[(1,('Sí')),(0,('No'))]) + + def Nombre_Votacion(self): + return self.votacionBinaria.titulo + class Question(models.Model): desc = models.TextField() From 7d14e2a96a2df419369d34e99a3c83a9e982e1fe Mon Sep 17 00:00:00 2001 From: FranAnillo <60961813+FranAnillo@users.noreply.github.com> Date: Tue, 7 Dec 2021 17:40:59 +0100 Subject: [PATCH 2/2] =?UTF-8?q?creaci=C3=B3n=20de=20los=20m=C3=A9todos=20a?= =?UTF-8?q?uxiliares=20de=20v.=20binarias?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- decide/voting/models.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/decide/voting/models.py b/decide/voting/models.py index d414c38a1f..b99e1474aa 100644 --- a/decide/voting/models.py +++ b/decide/voting/models.py @@ -16,6 +16,21 @@ class VotacionBinaria(models.Model): def str(self): return self.titulo + + #Contea el número de Si (true) emitido en la votación binaria + def Numero_De_Trues(self): + return RespuestaBinaria.objects.filter(respuesta=1,votacionBinaria_id=self.id).count() + + #Contea el número de No (false) emitido en la votación binaria + def Numero_De_Falses(self): + return RespuestaBinaria.objects.filter(respuesta=0,votacionBinaria_id=self.id).count() + + #Añade una respuesta binaria a la votación del mismo tipo + #Cuando creemos la respuesta binaria solo le tendremos que indicar los atributos de la respuesta en sí (el sentir del voto) + #La función entonces asociará la respuesta binaria emitida a la pregunta binaria en cuestión + def addRespuestaBinaria(self,respuestaBinaria): + respuestaBinaria.votacionBinaria = self + respuestaBinaria.save() #Modelo respuesta binaria