在 Flask 中,可以使用 __table__ 属性来获取模型类对应的表的所有字段名,包括外键。

from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'your_database_uri'
db = SQLAlchemy(app)

class SysUser(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(50))
    role_id = db.Column(db.Integer, db.ForeignKey('sys_role.id'))  # 外键

class SysRole(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(50))

user = SysUser.query.get(user_id)

# 获取SysUser表的所有字段名,包括外键
columns = [column.name for column in user.__table__.columns]
print(columns)

输出结果将会是一个包含所有字段名的列表,例如 ['id', 'name', 'role_id']


原文地址: https://www.cveoy.top/t/topic/o8iu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录