Foros del Web » Programando para Internet » Python »

Campos relacionadas

Estas en el tema de Campos relacionadas en el foro de Python en Foros del Web. Que tal, tengo este código para tomar los valores de 2 tablas distintas En la vista: gal = Galeria.objects.filter(usuario=request.user).selec t_related().order_by('-fecha') En la plantilla @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); ...
  #1 (permalink)  
Antiguo 10/12/2012, 11:34
Avatar de _Ju
_Ju
 
Fecha de Ingreso: noviembre-2008
Ubicación: Colima, MX
Mensajes: 192
Antigüedad: 16 años
Puntos: 6
Campos relacionadas

Que tal, tengo este código para tomar los valores de 2 tablas distintas

En la vista:
gal = Galeria.objects.filter(usuario=request.user).selec t_related().order_by('-fecha')

En la plantilla

Código Python:
Ver original
  1. {% for gal in galerias %}
  2.     {{gal.nombre}}
  3.    
  4.     {% for img in gal.foto_set.all %}
  5.         <img src="/media/{{ img.url }}"/>
  6.     {% endfor %}
  7.  
  8. {% endfor %}

El código funciona para mostrar los nombres de galerías creadas, y después muestra las fotos que contiene cada una de ellas.

El problema es que quiero mostrar solo una fotografía, no todas ellas. Existe alguna forma de poner un limite en el _set.all ??
__________________
www.grupogalco.net

Twitter: @jugalvez
  #2 (permalink)  
Antiguo 10/12/2012, 12:46
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Campos relacionadas

Puedes usar slice para limitar el numero de objetos del lado del template.

Código Python:
Ver original
  1. {% for gal in galerias %}
  2.     {{gal.nombre}}
  3.    
  4.     {% for img in gal.foto_set.all|slice:":10" %}
  5.         <img src="/media/{{ img.url }}"/>
  6.     {% endfor %}
  7.  
  8. {% endfor %}

Etiquetas: django
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:25.