Задать вопрос
@Muriam

Для чего нужна функция relationship() в sqlalchemy?

class Family(db.Model):
    __tablename__ = 'family'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(40))
    with_plants = db.relationship('Plants', backref='f')


class Genus(db.Model):
    __tablename__ = 'genus'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(40))
    with_plants = db.relationship('Plants', backref='g')


class Plants(db.Model):
    __tablename__ = 'plants'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(40))
    g_id = db.Column(db.Integer, db.ForeignKey('genus.id'))
    f_id = db.Column(db.Integer, db.ForeignKey('family.id'))


Я так понимаю relationship связывает таблицы, но не их поля (как это делает внешний ключ), а объекты? Как это понять?
У меня таблица genus связана с таблицей plants через relationship (и через ForeignKey тоже). А также таблица family с таблицей plants.

Как связать таблицы: plants c genus, и genus c family ?
  • Вопрос задан
  • 532 просмотра
Подписаться 1 Средний 11 комментариев
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Инженер по тестированию
    5 месяцев
    Далее
  • Яндекс Практикум
    Java-разработчик
    10 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик расширенный
    14 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽