我目前正在使用 Flask 和 SQLAlchemy 创建一个 Web 应用程序。
但是,我正在使用密码和用户名创建用户模型。我是否需要找到自己的库来对密码进行加盐和哈希处理,或者 SQLAlchemy 或 Flask 是否以某种方式提供了这一点?
此外,Flask 和 SQLAlchemy 最常用于数据库迁移的是什么?
让我们假设我改变了我的模型。如何删除旧模式并告诉 SQLAlchemy 使用新模式?
我目前正在使用 Flask 和 SQLAlchemy 创建一个 Web 应用程序。
但是,我正在使用密码和用户名创建用户模型。我是否需要找到自己的库来对密码进行加盐和哈希处理,或者 SQLAlchemy 或 Flask 是否以某种方式提供了这一点?
此外,Flask 和 SQLAlchemy 最常用于数据库迁移的是什么?
让我们假设我改变了我的模型。如何删除旧模式并告诉 SQLAlchemy 使用新模式?
是的,有一些图书馆可以为您处理这个问题。他们做多少工作取决于你。有些,例如bcrypt或passlib,只会为您提供生成密码哈希所需的算法。其他的,比如Flask-Security,比让你使用 mixins 来处理更多的事情更进一步。
至于数据库迁移,请查看alembic。它是由 SQLAlchemy 的主要维护者构建的迁移实用程序。
您还有另一个关于“Flask 开发人员更喜欢删除模式的特定方式”的问题。我不确定这意味着什么,但我想如果您更详细一点,您可能可以将其作为一个单独的问题提出。请记住,任何询问为什么首选某物的问题都应谨慎提出:偏好是主观的,因此,询问为什么首选某物的问题也可能是主观的。