Создание собственного уникального идентификатора при добавлении нового объекта в БД в py-sqlalchemy - PullRequest
0 голосов
/ 23 мая 2019

Я использую py-sql-alchemy с PostgreSQL, когда внедряю свой сервер. Я хочу создать собственный уникальный идентификатор, когда новый объект вставлен в БД. При определении класса таблицы я попытался сделать следующее

my_id = db.Column(db.String, unique=True, default=create_my_id)

Затем в функции create_my_id я пытался получить идентификатор вновь вставленного объекта. используя

context.get_current_parameters()['id']

и затем хешируйте это. Однако это не сработало, потому что кажется, что эта функция вызывается до того, как объект фактически вставлен в БД, поэтому поле id еще не инициализировано.

Интересно, есть ли простой способ заставить sql-alchemy выполнить собственную функцию после того, как объект фактически вставлен, и у меня есть доступ к полю id. Если я не должен этого делать, есть ли более простой способ создания хешированных уникальных идентификаторов для объектов в моих таблицах? Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...