Самостоятельная ссылка - неправильный порядок отображения - PullRequest
0 голосов
/ 08 ноября 2018

У меня есть одна модель sqlalchemy, объявленная таким образом:

class Cat(BaseModel):  # BaseModel declares id and uuid field, also renames table to 'cats'
    name = db.Column(db.String(256))
    color= db.Column(db.String(256))

    next_cat_id = db.Column(db.Integer(), db.ForeignKey('cats.id'))
    next_cat = db.relationship("Cat", uselist=False)

Так и должно быть One-One rel. где предыдущий кот указывает на следующий. Я подготовил несколько фиктивных данных в моей таблице postgres:

id  next_cat_id 
1   2
2   3
3   4
4   5
5   Null

Проблема возникает, когда я пытаюсь получить объект следующего кота:

cat = Cat.query.filter_by(id=5).first()  # Gives cat with id=5 (OK)
> cat.next_cat_id  # Gives None (OK)
> cat.next_cat  # Gives cat with id=4 instead of None 

У меня есть некоторые проблемы с разрешением направления отношений. Я также пытался указать remote_side параметр, но все равно возникает такая же проблема.

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