多对多关系烧瓶sqlalchemy

问题描述 投票:-1回答:1

我正在学习Flask,因此决定构建一个简单的市场应用程序。我有两种类型的用户,卖方和买方。我创建了一个有两个子级的用户类(买方,卖方)。卖方应具有上载某些产品以进行销售的能力。因此,我应该创建一个作为卖方子级的类。我认为,由于用户和买方之间的关系很多,因此产品和卖方之间的关系应该很多。

如果到目前为止,我已经做了一些事情,那么我应该如何创建这个新表。

flask flask-sqlalchemy
1个回答
0
投票

以不继承卖方的方式创建产品数据库会更加有益。并通过另一个表将用户数据库与产品相关联,如下所示:

class User(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    ...
class Product(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    ...
class Order(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    product_id = db.Column(db.Integer, db.ForeignKey('product.id'))
    user = db.relationship('User', backref=db.backref("order", cascade="all, delete-orphan"))
    product = db.relationship('Product', backref=db.backref("order", cascade="all, delete-orphan"))





© www.soinside.com 2019 - 2024. All rights reserved.