SQLAlchemy — как получить единичный связанный объект

Admin SQLAlchemy

Получаем сериализированное свойство в связанном объекте.

Для этого нужна функция:

    def __str__(self):
        return self.name_ru

Весь пример:

class Category(db.Model, RoleMixin):
    __tablename__ = 'categories'
    id = db.Column(db.Integer, primary_key=True, unique=True)
    cat_global_id = db.Column(db.Integer, db.ForeignKey('categories_global.id'))

    parent_global_name = db.relationship('CategoryGlobal', backref=db.backref('categories'))

    @property
    def serialize_for_categories(self):
        return {
            'id': self.id,
            'cat_global_name': self.parent_global_name.__str__(),
        }


class CategoryGlobal(db.Model, RoleMixin):
    __tablename__ = 'categories_global'
    id = db.Column(db.Integer, primary_key=True, unique=True)
    name_ru = db.Column(db.String(255))

    def __str__(self):
        return self.name_ru

Кстати, на сайте нет рекламы. У сайта нет цели самоокупаться, но если вам пригодилась информация можете задонатить мне на чашечку кофе в макдаке. Лайкнуть страницу или просто поблагодарить. Карма вам зачтется.

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи:
"SQLAlchemy — как получить единичный связанный объект"