У меня есть словари, которые выглядят так:
s_dates_dict = {17: datetime.date(2009,21,9,0,24), 19: datetime.datetime(2011,12,1,19,39,16), ....}
e_dates_dict = {17: datetime.date(2010,25,9,10,24), 19: datetime.datetime(2012,1,11,17,39,16), ....}
Я хочу использовать эти словари, чтобы найти следующую запись типа (A или B) после этой даты для каждой записи.Поэтому мне кажется, что лучше всего было бы создать запрос, подобный приведенному ниже:
next_record_list = Tasks.objects.filter(date__range(s_dates_dict,e_dates_dict), client__in=client_list, task_type__in=[A,B])
, в результате чего словари вызовут динамически изменяющийся диапазон для ссылки на pk.Я не нашел ничего, что предполагало бы, что это возможно или эффективно, поэтому я предполагаю, что лучше всего было бы создать список, исключив фильтр диапазона дат, а затем выполнив итерацию в словаре самых старых значений, используя оператор for, и обрезая итерации каждогозапись на дату, указанную в date_dict.Но я так и не нашел способ сделать это.Могу ли я получить некоторые предложения о том, как это сделать, или совершенно другой лучший метод?Спасибо.
РЕДАКТИРОВАТЬ:
client_list представляет собой список объектов клиента.
Вот некоторые из models.py:
class Client(models.Model):
user_name = models.CharField
class Task(models.Model):
client = models.ForeignKey(
'Client',
)
task_type = models.ForeginKey(
'Task_Type',
)
date = models.DateTimeField(
default = datetime.now(),
blank = True,
null = True,
)
class Task_Type(models.Model):
name = models.CharField