Flask-SQLAlchemy - 与列 x 相关联的外键找不到 table y 用于生成目标列 y 的外键

Flask-SQLAlchemy - Foreign key associated with column x could not find table y with which to generate a foreign key to target column y

出于某种原因,当我试图将数据插入 Postgres 时,我收到一条消息说我的 table 不存在。但是,当我 运行 \dt 时,table 出现在 Postgres CLI 中。此外,当我 运行 select * from rates; 时,我看到 table.

中存在数据
from app import db

class Car(db.Model):
    __tablename__ = 'car'
    ...
    rates_id = db.Column(db.Integer, db.ForeignKey('rates.rates_id'), nullable=True)
    owner = db.relationship('Owner', backref='car', lazy=True)

class Rates(db.Model):
    __tablename__ = 'rates'
    rates_id =  db.Column(db.Integer, primary_key=True)
    ...
    cars = db.relationship('Car', backref='rates', lazy=True)    

class Owner(db.Model):
    ...


@app.route('/add-car', methods=["POST"])
def add_car():
    ...
    car = Car(...)
    db.session.add(car)
    owner = Owner(...)
    db.session.add(owner)
    db.session.commit()

上面显示了使用的模型和我试图达到的示例端点。该函数应该 add_car 将在 CarOwner 中创建条目。此外,我希望 Car 模型中的 rates_idnull(至少最初是这样)。

我得到的错误是:

Error: Foreign key associated with column 'car.rates_id' could not find table 'rates' with which to generate a foreign key to target column 'rates_id'

我看到的大多数与此问题相关的帖子都使用与我相同的一般准则。但是,也许我遗漏了一些使其无法正常工作的东西?

谢谢。

问题与我的代码无关,而与我的代码结构有关。 Here 是解决问题的 SO post。

-- api

---- 型号

-------- _ _ 初始化 _ _.py

------ Car.py

------ Rates.py

------ Owner.py

----路线

----表格

所以在 api/models/__init__.py 内,我添加了以下内容:

from .Car import Car
from .Rates import Rates
from .Owner import Owner

现在一切似乎都正常了。

干杯。