flasksqlalchemy外键
时间: 2023-08-31 13:08:54 浏览: 96
在Flask-SQLAlchemy中,你可以使用外键来建立表之间的关联关系。以下是使用外键的示例:
首先,你需要在模型类中定义外键。假设你有两个模型类,一个是`User`,另一个是`Post`,并且每个帖子都与一个用户相关联。你可以在`Post`模型类中定义一个外键来引用`User`模型类的主键。
```python
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(50), unique=True)
posts = db.relationship('Post', backref='user', lazy=True)
class Post(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(100))
content = db.Column(db.Text)
user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
```
在上述示例中,`user_id`列是`Post`模型类的外键,它引用了`User`模型类的主键`id`。这样,每个帖子都会与一个用户相关联。
注意,我们还在`User`模型类中定义了一个名为`posts`的关系属性,它可以让我们通过用户对象来访问与该用户相关的所有帖子。
要创建外键关系并进行数据库迁移,请运行以下命令:
```
flask db migrate -m "Add foreign key relationship"
f
阅读全文