- Fecha y hora:
- 18/04/2017 17:03:13 (hace 7 años)
- Branches:
- master, base, constituyente, estudiantes, general, plan_patria, sala
- Children:
- bf6bc0b
- Parents:
- 6abfabc
- Ubicación:
- consulta
- Ficheros:
-
- 3 añadidos
- 3 editados
Leyenda
- No modificado
- Añadido
- Eliminado
-
consulta/templates/consulta.detail.html
r6abfabc r7310249 28 28 <a type="button" class="btn btn-danger" href="{% url 'consulta_delete' consulta.id %}"> Borrar</a> 29 29 {% if respuestas %} 30 <a type="button" class="btn btn-primary" href=" #"> EstadÃsticas <i class="glyphicon glyphicon-stats"></i></a>30 <a type="button" class="btn btn-primary" href="{% url 'consulta_stats' consulta.id %}"> EstadÃsticas <i class="glyphicon glyphicon-stats"></i></a> 31 31 {% endif %} 32 32 {% if respuestas_abierta %} -
consulta/urls.py
r6abfabc r7310249 23 23 url(r'^create$', ConsultaCreate.as_view(), name = "consulta_create"), 24 24 url(r'^list$', ConsultaList.as_view(), name = "consulta_list"), 25 url(r'^stats/(?P<pk>\d+)$', ConsultaStats.as_view(), name = "consulta_stats"), 25 26 url(r'^delete/(?P<pk>\d+)$', ConsultaDelete.as_view(), name = "consulta_delete"), 26 27 url(r'^detail/(?P<pk>\d+)$', ConsultaDetail.as_view(), name = "consulta_detail"), -
consulta/views.py
r6abfabc r7310249 216 216 217 217 218 218 class ConsultaStats(TemplateView): 219 """! 220 Clase que gestiona las estadÃsticas de la consulta 221 222 @author Rodrigo Boet (rboet at cenditel.gob.ve) 223 @copyright <a href='http://www.gnu.org/licenses/gpl-2.0.html'>GNU Public License versión 2 (GPLv2)</a> 224 @date 18-04-2017 225 @version 1.0.0 226 """ 227 template_name = "consulta.stats.html" 228 229 def get_context_data(self, **kwargs): 230 """! 231 Metodo que permite cargar de nuevo valores en los datos de contexto de la vista 232 233 @author Rodrigo Boet (rboet at cenditel.gob.ve) 234 @copyright GNU/GPLv2 235 @date 18-04-2017 236 @param self <b>{object}</b> Objeto que instancia la clase 237 @param kwargs <b>{object}</b> Objeto que contiene los datos de contexto 238 @return Retorna los datos de contexto 239 """ 240 preguntas_opciones = [] 241 preguntas_sino = [] 242 for pregunta in Pregunta.objects.filter(consulta_id=self.kwargs['pk']).exclude(tipo_pregunta_id=5).all(): 243 if pregunta.tipo_pregunta_id<3: 244 preguntas_opciones.append(self.get_pregunta_opciones(pregunta.id,pregunta.texto_pregunta)) 245 elif pregunta.tipo_pregunta_id<5: 246 preguntas_sino.append(self.get_pregunta_sino(pregunta.id,pregunta.texto_pregunta)) 247 kwargs['preguntas_opciones'] = preguntas_opciones 248 kwargs['preguntas_sino'] = preguntas_sino 249 250 return super(ConsultaStats, self).get_context_data(**kwargs) 251 252 def get_pregunta_opciones(self,id,titulo): 253 """! 254 Metodo que permite cargar las opciones para una pregunta simple o múltiple 255 256 @author Rodrigo Boet (rboet at cenditel.gob.ve) 257 @copyright GNU/GPLv2 258 @date 18-04-2017 259 @param self <b>{object}</b> Objeto que instancia la clase 260 @param id <b>{int}</b> Entero con el id de la consulta 261 @return Retorna los datos de contexto 262 """ 263 options = [] 264 values = [] 265 for opcion in Opcion.objects.filter(pregunta_id=id).all(): 266 options.append(opcion.texto_opcion.encode('utf8')) 267 values.append(RespuestaOpciones.objects.filter(opcion_id=opcion.id).count()) 268 data = {} 269 data['titulo'] = titulo 270 data['opciones'] = options 271 data['valores'] = values 272 return data 273 274 def get_pregunta_sino(self,id,titulo): 275 """! 276 Metodo que permite cargar las opciones para una pregunta si o no 277 278 @author Rodrigo Boet (rboet at cenditel.gob.ve) 279 @copyright GNU/GPLv2 280 @date 18-04-2017 281 @param self <b>{object}</b> Objeto que instancia la clase 282 @param id <b>{int}</b> Entero con el id de la consulta 283 @return Retorna los datos de contexto 284 """ 285 Si = RespuestaSino.objects.filter(respuesta=True).count() 286 No = RespuestaSino.objects.filter(respuesta=False).count() 287 data = {} 288 data['titulo'] = titulo 289 data['opciones'] = ['Si','No'] 290 data['valores'] = [Si, No] 291 return data 292 293 219 294 class OpcionesCreate(CreateView): 220 295 """!
Nota: Vea TracChangeset
para ayuda en el uso del visor de conjuntos de cambios.