Задачи Celerybeat получают ту же информацию, даже если она изменилась. (возможно кэширование) Как я могу отключить это

Я обнаружил, что TRUNCATE TABLE .. имеет проблемы с ограничениями внешнего ключа, даже после NOCHECK CONSTRAINT ALL, поэтому вместо этого я использую оператор DELETE FROM. Это означает, что семена идентичности не сбрасываются, вы всегда можете добавить DBCC CHECKIDENT для достижения этого.

Я использую следующий код, чтобы распечатать в окне сообщения sql для обрезания всех таблиц в базе данных , прежде чем запускать его. Это просто усложняет ошибку.

EXEC sp_MSforeachtable 'PRINT ''ALTER TABLE ? NOCHECK CONSTRAINT ALL'''
EXEC sp_MSforeachtable 'print ''DELETE FROM ?'''
EXEC sp_MSforeachtable 'print ''ALTER TABLE ? WITH CHECK CHECK CONSTRAINT all'''
2
задан Suhail Mirza 18 January 2019 в 13:29
поделиться

1 ответ

Спасибо @ 2ps, это была проблема. Мой DbObject не получал последние данные из БД, во-первых, добавление db.session.commit () помогло решить проблему.

def petchme(self):
    db.session.commit()
    self.dbObject = Patch.find_by_status('READY')
    if self.dbObject:
        print('Patch this')
    else:
        print('No patchgroup(s) in pipeline')
0
ответ дан Suhail Mirza 18 January 2019 в 13:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: