Как в SQLAlchemy создать отношения ForeignKey для двух разных файлов .py?

In user_models.py , у меня есть это:

class Users(Base):
    __tablename__ = 'account_users'
    id = Column(Integer, primary_key = True)
    username = Column(String(255), nullable=False)    
Base.metadata.create_all(engine)

Когда я запускаю это, я создаю таблицу пользователей.

В другом моем файле, groups_models.py , у меня есть следующее:

class Groups(Base):
    __tablename__ = 'personas_groups'
    id = Column(Integer, primary_key = True)
    user_id = Column(Integer, ForeignKey('account_users.id')) #This creates an error!!!
    user = relationship('Users') #this probably won't work. But haven't hit this line yet.

Base.metadata.create_all(engine)

Итак, как вы можете видеть, я хочу установить связь «многие-к-одному» между группами -> пользователями.

Но когда я запускаю groups_models.py ... я получаю такую ​​ошибку:

sqlalchemy.exc.NoReferencedTableError: Foreign key associated with column 'personas_groups.user_id' could not find table 'account_users' with which to generate a foreign key to target column 'id'

Если я объединю две таблицы в один файл, я уверен, что это может сработать ... но потому что Я разделил его на 2 файла (что мне абсолютно необходимо) ... Я не знаю, как заставить работать отношения ForeignKey?

13
задан TIMEX 24 November 2011 в 20:06
поделиться