как я могу сделать запрос «между» с помощью web2py.DAL?

StackOverflow https://stackoverflow.com/questions/1907088

  •  19-09-2019
  •  | 
  •  

Вопрос

Я пытаюсь создать функцию запроса, которая принимает два объекта datetime.date (start_date и end_date) и возвращает все записи со связанным полем, которое находится между start_date и end_date.Однако я не нашел ничего похожего на between в руководстве по web2py, поэтому я реализую ее следующим образом:

        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)

Это слишком медленно для моего приложения, поскольку в нем может быть много объектов.Итак, есть ли лучший способ реализовать это с помощью web2py.DAL?Заранее спасибо ;)

Это было полезно?

Решение

db((db.mytable.create_date>=query_dict['create_date1'])&(db.mytable.create_date<=query_dict['create_date2'])).select()

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top