Foros del Web » Programando para Internet » Python »

rangos de fechas validar

Estas en el tema de rangos de fechas validar en el foro de Python en Foros del Web. Hola tengo un problema necesito validar 2 campos que son tipo fechas ingreso estos datos fecha_inicio: 01/01/2014 fecha_fin: 06/01/2014 lo cual funciona bien guarda esa ...
  #1 (permalink)  
Antiguo 18/08/2014, 15:50
 
Fecha de Ingreso: julio-2011
Ubicación: Peru
Mensajes: 92
Antigüedad: 12 años, 9 meses
Puntos: 1
rangos de fechas validar

Hola tengo un problema necesito validar 2 campos que son tipo fechas ingreso estos datos

fecha_inicio: 01/01/2014
fecha_fin: 06/01/2014

lo cual funciona bien guarda esa fechas normal pero cuando vuelvo a ingresar otras fechas como estas

fecha_inicio: 06/01/2014
fecha_fin: 13/01/2014

no deberia dejar guardar esas fecha que la fecha 06 ya fue asignada pero sin embargo lo guarda normal cando no deberia hacerlo aqui les dejo mi codigo


models.py
Código Python:
Ver original
  1. class DataExcel(models.Model):
  2.  
  3.     name = models.CharField('Nombre', max_length=20)
  4.     fecha_inicio = models.DateField(verbose_name='Fecha inicio')
  5.     fecha_fin = models.DateField(verbose_name='Fecha Fin')
  6.     fullname = models.CharField(max_length=200,editable=False)
  7.     file = models.FileField(upload_to=settings.MEDIA_ROOT,verbose_name='Archivo', max_length=300)

views.py

Código Python:
Ver original
  1. class DataExcelCreateView(CreateView):
  2.     model = DataExcel
  3.     template_name = 'app/dataexcel_form.html'
  4.     form_class = ExcelForm
  5.     success_url = '/list-files/'
  6.  
  7.  
  8.     def post(self, request, *args, **kwargs):
  9.         form_class = self.get_form_class()
  10.         form = self.get_form(form_class)
  11.         context = self.get_context_data(**kwargs)
  12.         form_class = self.get_form_class()
  13.         form = self.get_form(form_class)
  14.         fecha_inicio = datetime.strptime(self.request.POST.get('fecha_inicio'), '%d/%m/%Y')
  15.         fecha_fin = datetime.strptime(self.request.POST.get('fecha_fin'), '%d/%m/%Y')
  16.         exists = DataExcel.objects.filter(fecha_fin__gte = fecha_fin).count()
  17.  
  18.         if exists == 0:
  19.             return self.form_valid(form)
  20.         else:
  21.             context['form'] = form
  22.             context['invalid_date'] = 'Las fechas seleccionadas ya se encuentran registradas, intente de otra fecha.'
  23.         return self.render_to_response(context)

esperando su pronta ayuda

Etiquetas: campo, ip, rangos
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 05:44.