У меня есть две таблицы, родительская и пользовательская. Родитель уже получает много данных, записанных в него, поэтому для очистки таблицы я хочу переместить некоторые столбцы в новую таблицу с именем user.
Однако я хочу создать связь между обеими таблицами, поэтому таблица USER ссылается на родительскую таблицу.
Это отношение один к одному, поэтому первичный ключ пользователя переходит в Parent как внешний ключ. Я полагаю, что для ссылки на него, кроме того, нужно ли мне использовать back_populate?
Я хочу заполнить данные в таблице User из родительской таблицы, а затем в конце концов прекратить запись в указанный столбец c в родительской таблице, который я переместил в новую пользовательскую таблицу. Столбец parent_data содержит данные о местоположении, которые я переместил в таблицу User.
Я делаю это в sqlalchemy, но у меня возникли некоторые проблемы, связанные с подходом к нему, заполнением нового пользователя. таблица на основе ссылки на родительскую таблицу. Я не хочу использовать грипп sh, но метод отношений именно потому, что данные будут сериализованы в новой таблице.
Любая помощь по этому вопросу будет очень признательна, заранее спасибо!
Родительская таблица
class Parent(AuditMixin):
__tablename__ = 'Parent'
parent_id = Column(Integer, PrimaryKey(parent_id), nullable=False)
parent_data = Column(JSONB, server_default='{}', nullable=False)
ip_address = Column(INET, nullable=True)
ude_id = Column(Integer, ForeignKey(User.ude_id), nullable=False)
Таблица пользователей
class User(AuditMixin):
__tablename__ = 'User'
ude_id = Column(Integer, PrimaryKey(ude_id), nullable=False)
loc_id = Column(Integer, ForeignKey(Parent.parent_id))
ip_address = Column(inet)