Django Mostrar elementos M2M en una plantilla
Pregunta
Si tiene una declaración como
def inside_classroom(request,classname):
theclass = Classroom.objects.get(classname = classname)
members = theclass.members.all()
c = Courses.objects.filter(classroom = theclass)
return render_to_response('classroom/inside_classroom.html', {
'theclass': theclass,
'c':c,
'members':members,
},
context_instance=RequestContext(request))
Y quiero mostrar a todos los miembros (de una clase) en una plantilla, ¿cómo debo hacerlo?
Si escribo:
{{theclass.members.all}}
La salida es una lista vacía (aunque la clase tiene algunos miembros)
¿Cómo se deben mostrar los elementos de una tabla M2M en una plantilla? ¡Gracias!
Solución
Deberías poner members
En el contexto y en la plantilla, iterar sobre todos los miembros, por ejemplo.
{% for member in members %}
{{ member.name }}<br />
{{ member.xxxx }}
{% endfor %}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow