Я хотел бы управлять деятельностью пользователя OpenERP, установив модуль аудита.
После создания некоторых правил (определить, какой пользователь, какой объект и какой вид деятельности (создать, обновить ..) будет отслеживаться). Я обновляю продукт, чтобы увидеть, как он работает.
Когда я попытался обновить продукт, я получил системную ошибку. Увидев журнал, я получаю
[2010-08-31 12: 53: 35,042] Курсор не закрыт явно
[2010-08-31 12: 53: 35,043] Курсор был создан в/home/pilgrim/working/источники/аддоны/AuditTrail/audittrail.py: 204
Здесь линия, которая вызывает ошибку
кр = pooler.get_db (дБ) .cursor()
Глядя на sql_db.py, я получаю свой комментарийИзбегайте ошибки OpenITP audittrail
def __del__(self):
if not self.__closed:
# Oops. 'self' has not been closed explicitly.
# The cursor will be deleted by the garbage collector,
# but the database connection is not put back into the connection
# pool, preventing some operation on the database like dropping it.
# This can also lead to a server overload.
msg = "Cursor not closed explicitly\n" \
"Cursor was created at %s:%s" % self.__caller
log(msg, netsvc.LOG_WARNING)
self.close()
Поскольку я новичок в Python, я не знаю, как преодолеть эту проблему?
Любой намек на это?
Thank
Внимание будет поднят только в том случае, когда вы открыли курсор явно себя и забыл закрыть его после выполнения вашей логики, вам нужно вызвать cr.close(), прежде чем cr выйдет из его области. ... – shahjapan