объект в БД), количество данных(строк) в файле может быть разным, мне нужно гет запросом выбрать только те данные, которые были загружены последним файлом, как это можно сделать?
как вариант фиксировать дату добавления
Да, я её фиксирую, автоматом пишется в базу, но тут момент такой что в гет запросе ничего передавать нельзя, т.е. Дата у меня есть, но я не могу её явно задать. Пока писал этот ответ подумал что могу её задавать через max(date_upload_at) 😊
в данных поле is_recent - bool 1 я загрузка - is_recent по умолчанию True 2-я загрузка стартовала Item.objects.filter(is_recent=True).update(is_recent=False) здесь цикл по csv как в 1-й загрузка get Item.objects.filter(is_recent=True)
Спасибо, думал использовать подобные флаги, но хотелось обойтись без лишних запросов в базу)
без лишних никак
Можешь флаги хранить в nosql базе
Не, условие что вся работа в реляционной бд
ну если оптимизировать, делаем автоинкремент какой нить и запоминаем его последнее значение все что больше - отдаем
Спасибо большое, почитаю как это делается, если шибко сложно будет, то сделаю несколько запросов пока что работало, а после уже задумаюсь об оптимизации)
еще в догонку, можно тупо recent таблицу сделать - которая кусок от актуальной бд те при импорте ее очищаем закидываем в нее и в основную - а уже рестом отдаем из нее данные запись дороже, чтение моментом или тупо даже не таблицу а сразу в кеш пихаем и все последние данные )
Во, это звучит ещё интереснее, буду пробовать) спасибо огромное)
Обсуждают сегодня