Python 如何在Flask SQLAlchemy数据库模型中创建并插入具有列表字段的表?
我有一个简单的数据库模型来代表一个团队。每个团队可以有4名团队成员,每个成员的姓名和T恤尺寸都将被存储Python 如何在Flask SQLAlchemy数据库模型中创建并插入具有列表字段的表?,python,sqlalchemy,Python,Sqlalchemy,我有一个简单的数据库模型来代表一个团队。每个团队可以有4名团队成员,每个成员的姓名和T恤尺寸都将被存储 from app import db class Team(db.Model): id = db.Column(db.Integer, primary_key=True) team_name = db.Column(db.String(64), nullable=False, index=True, unique=True) college_name = db.Col
from app import db
class Team(db.Model):
id = db.Column(db.Integer, primary_key=True)
team_name = db.Column(db.String(64), nullable=False, index=True, unique=True)
college_name = db.Column(db.String(64), nullable=False)
email = db.Column(db.String(64), nullable=False, unique=True)
phone = db.Column(db.String(10), nullable=False)
team_members = [db.Column(db.String(64), default="-") for _ in range(4)]
tshirt_sizes = [db.Column(db.String(2), default="-") for _ in range(4)]
我使用的是Flask Migrate,当数据库初始化时,不会创建团队成员和T恤尺寸的列。如何创建具有所需列数的表,以及如何向表中插入数据
Django有,我正在寻找类似的东西。您能为
TeamMember
和TshirtSize
再创建两个表,然后使用关系进行映射吗?这似乎是人们通常会做的事情。这可能会帮助你:即使你尝试过的方式是这样的,它也会适得其反,因为团队成员和衬衫尺码会形成重复的群体。按照@k-nut的建议执行。如果您坚持非规范化,那么解决方案就是像通常那样创建列:team\u member\u 1=db.Columb(…)
等。或者如果使用Postgres或其他支持数组的db,则使用数组类型列。此外,如果您坚持,但您的db没有数组或JSON类型,则可以创建一个。