можно было использовать её раз в 2 часа по уникальному Id.
добавить поле в бд с timestamp последнего использования у юзера и сверять эту дату, прошло ли время для следующего использования
в бд же можно сделать поле с датой и чтоб оно обновлялось само при последнем изменении записи
Есть версия ещё проще, сделать бул столбец, и когда пользователь юзает, сделать бул строку как тру и в полночь 00:00 все бул строки привести в состояние фолс
у него же таймер для каждого юзера, если каждый может раз в 2 часа использовать, то решение уже не подходит, если раз в день то да
Аааа понял, немного не обратил внимания, сори
надо бы поискать, ибо я просто беру текущее время и навешиваю +2 часа и пишу в бд. может я где-то промахнулся в форматировании...
в какой момент сверять дату? что должно 'щёлкнуть'?)
таск на функцию создать?
я бы наверное сделал все-таки автоматический столбец, пусть метку ставит сама бд, а потом уже берешь время оттуда и по своей формуле проверяешь
В момент когда тебе это важно
сейчас попробую.
нашёл "генерируемый столбец", не оно ли часом?
updated_at = models.DateTimeField(auto_now=True, verbose_name='Дата обновления')
а правильно будет создавать таск? async def freeze(): await asyncio.sleep(7200) # 2 часа # удаляем запись из бд async def main(): ... # добавление time.time() в бд asyncio.create_task()
Ужасно
Ещё бы очередь предложили
Обсуждают сегодня