SQLAlchemy的模型类是什么?

-1 投票
1 回答
658 浏览
提问于 2025-04-18 00:42
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy

app = Flask(__name__)

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////tmp/test.db'

db = SQLAlchemy(app)                             


class User(db.Model):

    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80), unique=True)
    email = db.Column(db.String(120), unique=True)

    def __init__(self, username, email):
        self.username = username
        self.email = email

    def __repr__(self):
        return '<User %r>' % self.username

我在SQLAlchemy的文档中找到了这段代码。db=SQLAlchemy(app) 这意味着db是一个对象。看这行代码,User(db.Model),感觉db像是一个模块的名字。

那么,db到底是什么呢?有人能给我解释一下吗?

https://developers.google.com/appengine/docs/python/datastore/modelclass 我看过这个,但还是不太明白。

1 个回答

0

db = SQLAlchemy(app) 这行代码是用来设置 db 变量,并确保它和正确的应用上下文关联在一起。简单来说,就是把应用程序注册到 db 实例上。这样做的目的是为了把当前上下文中的应用程序和数据库连接起来。

撰写回答