TransWikia.com

¿Cómo puedo mostrar todos los votos de la aplicacion de encuestas de django?

Stack Overflow en español Asked by Riicky on November 15, 2021

Querría saber cómo puedo mostrar todos los votos en la vista de resultado de la aplicaciones de encuestas de Django, la primera que aparece en todos los tutoriales.

Tengo esto, pero así me muestra el resultado solo de una:

<h1>{{ pregunta.pregunta }}</h1>

<ul>
{% for respuesta in pregunta.respuesta_set.all %}
    <li>{{ respuesta.respuesta }} -- {{ respuesta.votos}} voto{{ respuesta.votos|pluralize }}</li>
{% endfor %}
</ul>

Éste es mi código para views.py:

class IndexView(generic.ListView):
    template_name = 'ProyectoF/index.html'
    context_object_name = 'lista_upreguntas'

    def get_queryset(self):
        """Devuelve las 5 ultimas preguntas."""
        return Pregunta.objects.order_by('-prgFecha')[:5]


class DetallesView(generic.DetailView):
    model = Pregunta
    template_name = 'ProyectoF/detalles.html'


class ResultadosView(generic.DetailView):
    model = Pregunta
    template_name = 'ProyectoF/resultados.html'
    total = 


def votos(request, pregunta_id):
    p = get_object_or_404(Pregunta, pk=pregunta_id)
    try:
        respuesta_ele = p.respuesta_set.get(pk=request.POST['respuesta'])
    except (KeyError, Respuesta.DoesNotExist):
        # Redisplay the Pregunta voting form.
        return render(request, 'ProyectoF/detalles.html', {
            'pregunta': p,
            'error_message': "No has selecionado ninguna respuesta",
        })
    else:
        respuesta_ele.votos += 1
        respuesta_ele.save()
        # Always return an HttpResponseRedirect after successfully dealing
        # with POST data. This prevents data from being posted twice if a
        # user hits the Back button.
        return HttpResponseRedirect(reverse('ProyectoF:resultados', args=(p.id,)))

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP