使用 dynamodb 时如何为 Flask-Login 创建用户 class?
How to create a User class for Flask-Login when using dynamodb?
我正在按照 https://www.digitalocean.com/community/tutorials/how-to-add-authentication-to-your-app-with-flask-login 上的教程向 Flask 应用程序添加 register/login 功能,该应用程序使用 Flask-Login
和 SQLite 数据库(使用 flask_sqlalchemy
)。因此,它有如下代码用于初始化 SQLite 数据库(来自 init.py):
db = SQLAlchemy()
def create_app():
app = Flask(__name__)
app.config['SECRET_KEY'] = '9OLWxND4o83j4K4iuopO'
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///db.sqlite'
db.init_app(app)
然后创建一个 User
class(根据 Flask-Login
的要求),如下所示:
from flask_login import UserMixin
from . import db
class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True) # primary keys are required by SQLAlchemy
email = db.Column(db.String(100), unique=True)
password = db.Column(db.String(100))
name = db.Column(db.String(1000))
但是,我想将用户信息存储在 dynamodb table,而不是 SQLite table 中。那User
class应该怎么写呢?我希望每个 User
都有一个 email
、password
和 name
属性(以及 https://flask-login.readthedocs.io/en/latest/#your-user-class 由 UserMixin
处理),但我不确定在使用 dynamodb 时如何编写 class。
我写的用户class简单如下:
class User(UserMixin):
def __init__(self, id, email, name, password):
self.id = id
self.email = email
self.name = name
self.password = password
我正在按照 https://www.digitalocean.com/community/tutorials/how-to-add-authentication-to-your-app-with-flask-login 上的教程向 Flask 应用程序添加 register/login 功能,该应用程序使用 Flask-Login
和 SQLite 数据库(使用 flask_sqlalchemy
)。因此,它有如下代码用于初始化 SQLite 数据库(来自 init.py):
db = SQLAlchemy()
def create_app():
app = Flask(__name__)
app.config['SECRET_KEY'] = '9OLWxND4o83j4K4iuopO'
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///db.sqlite'
db.init_app(app)
然后创建一个 User
class(根据 Flask-Login
的要求),如下所示:
from flask_login import UserMixin
from . import db
class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True) # primary keys are required by SQLAlchemy
email = db.Column(db.String(100), unique=True)
password = db.Column(db.String(100))
name = db.Column(db.String(1000))
但是,我想将用户信息存储在 dynamodb table,而不是 SQLite table 中。那User
class应该怎么写呢?我希望每个 User
都有一个 email
、password
和 name
属性(以及 https://flask-login.readthedocs.io/en/latest/#your-user-class 由 UserMixin
处理),但我不确定在使用 dynamodb 时如何编写 class。
我写的用户class简单如下:
class User(UserMixin):
def __init__(self, id, email, name, password):
self.id = id
self.email = email
self.name = name
self.password = password