Ver Mensaje Individual
  #21 (permalink)  
Antiguo 11/02/2011, 13:10
ichibi
 
Fecha de Ingreso: enero-2011
Mensajes: 26
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: queryset con django

que tal pues si quisas tengas razon al respecto e modificado gran parte de mi codigo pues pra optimiza decidi usar vitas genericas y pues con respecto al problema que tenia en la url que se me perdia el nombre del proyecto ya esta solucionado gracias a las vistas genericas lo hice con herencia...

ahora mismo solo necesito mostrar mis componentes por las fechas de semana mes y año hasta donde se creo debo hacer una vista pero no se como !!!! te envio mis nuevos models.py

from django.db import models
from datetime import datetime

class Proyecto(models.Model):
nombre = models.CharField(max_length=200)

def __unicode__(self):
return self.nombre

class Componente(models.Model):
proyecto = models.ForeignKey(Proyecto)
nombre = models.CharField(max_length=200)

def __unicode__(self):
return self.nombre

class Alerta(models.Model):
proyecto = models.ForeignKey(Proyecto)
componente = models.ForeignKey(Componente)
alertas = models.PositiveIntegerField()
fecha = models.DateField(editable=False)

def save(self):
if not self.id:
self.fecha = datetime.today()
super(Alerta, self).save()

def __unicode__(self):
return "%s - %s" % (self.fecha, self.alertas)



mis nuevas urls.py

from django.views.generic import date_based
from aplicacion.models import Proyecto, Alerta, Componente

from django.contrib import admin
admin.autodiscover()

proyecto_info = {
'queryset' : Proyecto.objects.all(),
}

alerta_info = {
'queryset': Alerta.objects.all(),
'date_field': 'fecha',
'extra_context': { 'componentes': Componente.objects.all()},
}

urlpatterns = patterns('',
(r'^admin/', include(admin.site.urls)),
(r'^aplicacion/$', 'django.views.generic.list_detail.object_list', proyecto_info),
(r'^aplicacion/(?P<proyecto>\w+)/$', 'aplicacion.views.componente'),
(r'^aplicacion/(?P<proyecto>\w+)/(?P<componente>\w+)/$', 'aplicacion.views.alerta')

y mis nuevas vistas

from aplicacion.models import Proyecto, Componente, Alerta
from django.views.generic.list_detail import object_list

def componente(request, proyecto):
components = Componente.objects.filter(proyecto__nombre = proyecto)
return object_list(request, queryset=components, extra_context = {'project': proyecto})

def alerta(request, proyecto ,componente ):
alerts = Alerta.objects.filter(componente__nombre = componente, proyecto__nombre = proyecto )
return object_list(request, queryset=alerts, extra_context = {'project': proyecto})


estoy muy trancada en esto porque no se como hacerlo te voy a explicar de nuevo por si acaso lo que puedo hacer hasta ahora es mostrar las alertas por componente ...pero lo que necesito es mostrar las alertas por componente segun semanas mes y años por eso la exixtencia de la fecha en la tabla alerta ... bueno espero que con toda esta informacion si me puedas ayudar y disculpa por lo redactar bien las anteriores veces