2017-02-17 28 views
0

Привет, ребята У меня есть этот код и он прекрасно работает в Python:Джанго: Попытка сделать для зип работы с Python Джиндже

var1 = ('puno', 'pdos', 'ptres') 
var2 = ('runo', 'rdos', 'rtres') 
for x, y in zip (var1, var2): 
    hola = x, y 
    for x in hola: 
     print x 

Выход этого это именно то, что я ищу:

uno 
runo 
pdos 
rdos 
ptres 
rtres 
[Finished in 0.1s] 

Я пытаюсь получить то же самое, используя Джанго с дзиндзя, но он не работает для меня, даже если использовать «молнии» в дзиндзя,

есть ли способ получить этот результат в дзиндзя?

Позвольте мне показать мой код, используя Джанго:

def todo(request): 
    lista_completa = Data_pregunta.objects.all()#.order_by('id')[:2] 
    lista_completa2 = Data_respuesta.objects.all()#.order_by('id')[:2] 

    return render(request, 'todo.html', {'lista_completa': lista_completa,'lista_completa2':lista_completa2}) 

дзиндзя:

{% for x in lista_completa %} 

{{x.pregunta}}<br> 

{% endfor %} 

Что я ищу, чтобы получить результат Data_pregunta затем Data_respuesta, возможно ли это?

Я думаю, что проблема не в том, что я питон, что я тоже не использую джиндю, не могли бы вы, ребята, дать мне руку?

Спасибо!

ответ

0

Вы можете просто использовать почтовый индекс() на ваш взгляд.

listas = zip(lista_completa, lista_completa2) 
return render(request, template.html, {'listas': listas}) 

Затем просто распакуйте кортеж над каждой операцией, используя две переменные в цикле for.

{% for pregunta, respuesta in listas %} 
    # pregunta.show (or whatever your attribute for pregunta is) 
    # respuesta.show 
{% endfor %} 

Saludos!

0

Django по умолчанию не использует шаблоны Jinja2. Если вы специально не настроили Django для использования Jinja2, вы используете язык шаблонов Django (который имеет очень похожий синтаксис).

Шаблонный механизм Django не имеет никакого хорошего способа сделать это. Вам просто нужно zip два QuerySet сек перед передачей их в шаблон:

return render(request, 'todo.html', { 
    'preguntas_y_respuestas': zip(lista_completa, lista_completa2) 
}) 

В шаблоне, вы можете итерацию по парам объектов:

{% for pregunta, respuesta in preguntas_y_respuestas %} 
    ... 
{% endfor %} 

 Смежные вопросы

  • Нет связанных вопросов^_^