【发布时间】:2020-03-01 23:11:35
【问题描述】:
我正在学习 Flask,我决定构建一个简单的市场应用程序。我有两种类型的用户,卖家和买家。我创建了一个有两个孩子(买方,卖方)的用户类。卖家应该有上传一些产品以便销售的能力。因此,我应该创建一个作为卖方子级的类。我认为既然用户和买家之间的关系是多对多的,那么产品和卖家之间的关系应该是多对多的。
如果到目前为止我已经做了一些事情,我应该如何创建这个新表。
【问题讨论】:
我正在学习 Flask,我决定构建一个简单的市场应用程序。我有两种类型的用户,卖家和买家。我创建了一个有两个孩子(买方,卖方)的用户类。卖家应该有上传一些产品以便销售的能力。因此,我应该创建一个作为卖方子级的类。我认为既然用户和买家之间的关系是多对多的,那么产品和卖家之间的关系应该是多对多的。
如果到目前为止我已经做了一些事情,我应该如何创建这个新表。
【问题讨论】:
以不从卖方继承的方式创建产品数据库会更有益。并通过另一个表将用户数据库与产品相关联,如下所示:
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"))
【讨论】: