Я пытаюсь сохранить класс в базе данных Postgres с помощью алхимии SQL, но мой метод не работает.
Схема базы данных выглядит следующим образом:
class PersistentClass(Base):
__tablename__ = 'persistent_class'
id = Column(String(50), primary_key=True, index=True,
nullable=False, autoincrement=False)
class_binary = Column(Binary, nullable=False)
def __init__(self, id, class_binary):
self.id = id
self.class_binary = class_binary
Я хотел бы сохранить это, используя метод класса:
class model:
def persist(self):
file = open(f"{self.id}.pkl", 'wb')
model = PersistentClass(id_model=self.id,
model_binary=pickle.dump(self, file, protocol=pickle.HIGHEST_PROTOCOL))
session.add(model)
session.commit()
Однако это сохранило только идентификатор в соответствующем каталоге пакета вместо сохранения в базе данных.Пожалуйста, кто-нибудь может посоветовать, как обеспечить правильное сохранение в базу данных.Спасибо.