Как использовать оператор соединения между моделями таблиц в flask_sqlalchemy без определения внешнего ключа? - PullRequest
0 голосов
/ 05 апреля 2020

Как использовать JOIN в flask_sqlalchemy, если в моих двух таблицах нет определения отношений в модельных кодах, например,

, например, у меня есть таблица Person и Pet, тогда у меня есть другая таблица с именем PersonPet

"""Person table Model"""

class Person(db.Model):
     personid = db.Column(db.Integer, primary_key=True)
     name = db.Column(db.String(20), nullable=False)
     surname = db.Column(db.String(20), nullable=False)



"""Pet table Model"""

class Pet(db.Model):
     petid = db.Column(db.Integer, primary_key=True)
     type = db.Column(db.String(10), nullable=False)
     status = db.Column(db.Integer, nullable=False)



PersonPet Table Model

class PersonPet(db.Model):
    person_pet_id = db.Column(db.Integer, primary_key=True)
    personid = db.Column(db.Integer,nullable=False)
    petid = db.Column(db.Integerm,nullable=False)

Если в простом синтаксисе SQL данные о человеке и домашнем животном могут быть получены, как показано ниже, после извлечения с использованием их первичных ключей, хранящихся в таблице person_pets

SELECT * FROM Person JOIN PersonPets ON Person.personid = PersonPets.Personid JOIN Pets ON PersonPets.petid = Pets.petid

Так как это сделать что в синтаксисе flask_sqlalchemy?

...