小编tit*_*aka的帖子

如何使用带有额外数据的 Flask-sqlalchemy 创建多对多关联?

我需要使用flask-sqlalchemy将两个模型员工技能与额外数据相关联。

例如,用户1可以做skill1用效率为100%和skill2用效率80%。

所以,我制作了 3 个模型:

class Employee(db.Model):
    __tablename__ = 'employees'

    id = db.Column(db.Integer, primary_key=True)
    login = db.Column(db.String(64), index=True, unique=True, nullable=False)

    skills = db.relationship('Skill', secondary='employee_skills',
                             backref=db.backref('employees', lazy='dynamic'))

    def __repr__(self):
        return '<Employee %r, Skills: %r>' % (self.login, self.skills)


class Skill(db.Model):
    __tablename__ = 'skills'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(64), nullable=False, unique=True)

    def __repr__(self):
        return '<Skill %r>' % self.name


class EmployeeSkill(db.Model):
    __tablename__ = 'employee_skills'

    employee_id = db.Column(db.Integer, db.ForeignKey('employees.id'), primary_key=True)
    skill_id = db.Column(db.Integer, …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy flask flask-sqlalchemy

2
推荐指数
1
解决办法
2489
查看次数

标签 统计

flask ×1

flask-sqlalchemy ×1

python ×1

sqlalchemy ×1