У меня есть несколько моделей sqlalchemy, в которых есть GeometryColumn.
Для целей кэширования я использую cPickle.
Теперь, пока этот столбец пуст, все нормально.Однако, если у меня есть данные, которые я получаю:
TypeError: buffer() takes at least 1 argument (0 given)
при выполнении cPickle.loads(data)
Мне не нужен этот столбец в этом запросе, я буду рад исключить его.
Но, делая что-то вроде mymodel.geom = None
перед травлением, выдает эту ошибку
Единственное решение, которое я имею в виду, - это определить другую модель sqlalchemy, у которой не будет этого столбца.Но если я установлю:
__tablename__ = 'same_table'
Я получу:
Table 'my_model' is already defined for this MetaData instance. Specify 'extend_existing=True' to redefine options and columns on an existing Table object.
Есть ли какое-либо решение для любой из этих ошибок или какой-то обходной?сделать что-то вроде:
class MyModelNoGeom(MyModel):
__tablename__=MyModel.__tablename__
__table__.extend_existing=True
geom=None
Также выдает ошибку:
NameError: name '__table__' is not defined