¿cómo puedo hacer 'entre' consulta con web2py.DAL?
Pregunta
Estoy tratando de hacer una función de consulta que acepta dos objetos datetime.date (fecha_inicial y fecha_final), y devolver todos los registros con un campo relacionado que está entre fecha_inicial y fecha_final.
Sin embargo, he encontrado nada como una función between
en el manual de web2py, por lo implemento de esta manera:
for o in objects:
# notice that create_time is a datetime field
create_date = dt.datetime.strptime(o['create_time'],
"%Y-%m-%d %H:%M:%S").strftime("%Y-%m-%d")
if query_dict['create_date_1'] <= create_date <= query_dict['create_date_2']:
result.append(l)
Hacer esto es demasiado lento para mi aplicación, ya que su puede haber muchos objetos. Por lo tanto, hay una mejor manera de que pueda poner en práctica esta usando web2py.DAL? Gracias de antemano;)
Solución
db((db.mytable.create_date>=query_dict['create_date1'])&(db.mytable.create_date<=query_dict['create_date2'])).select()
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow