ITADN
pallets-eco/flask-admin
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Flask-Admin

Flask-Admin 现已成为 Pallets-Eco 的一部分,这是一个由 Pallets 团队管理的开源组织,旨在促进 Flask 扩展的社区维护。请更新您对 https://github.com/pallets-eco/flask-admin.git 的引用。

image

Pallets 社区生态系统

[!IMPORTANT]
本项目是 Pallets 社区生态系统的一部分。Pallets 是维护 Flask 的开源组织;Pallets-Eco 支持对相关项目进行社区维护。如果您有兴趣协助维护 本项目,请在 Pallets Discord 服务器 上联系我们。

简介

Flask-Admin 是一个功能完备、易于使用的 Flask 扩展,允许您为 Flask 应用程序添加管理 界面。它受 django-admin 包的启发,但其实现方式使得开发者能够完全 控制最终应用程序的外观、感觉、功能和用户体验。

image

开箱即用,Flask-Admin 与各种 ORM 兼容良好,包括

它还提供了一个简单的文件管理界面和一个 Redis client 控制台。

Flask-Admin 最大的特性是其灵活性。它旨在提供一组简单的工具,可用于构建任意复杂度的管理界面。首先,你可以快速创建一个非常简单的 应用程序,为每个模型自动生成 CRUD 视图。然后,你可以 根据需要进一步自定义这些视图和表单。

Flask-Admin 是一个活跃的项目,经过充分测试并可用于生产环境。

示例

/examples 文件夹中包含多个使用示例。请添加你自己的示例,或改进现有示例,并提交 pull-request

如何运行示例

克隆仓库并导航到某个示例(本例使用 SQLAlchemy Example):

git clone https://github.com/pallets-eco/flask-admin.git
cd flask-admin/examples/sqla

所有示例均使用 uv 来管理其依赖项和开发环境。

使用 uv 运行示例,它将自动管理环境和依赖项:

uv run main.py

检查运行在 http://localhost:5000 上的 Flask 应用。

文档

Flask-Admin 拥有详尽的文档,你可以在 https://flask-admin.readthedocs.io/en/latest/ 找到所有文档。

文档是从 /doc 文件夹中的 .rst 文件自动生成的。 如果你发现任何错误,或者认为还有其他内容应该包含在内, 请随时进行修改并提交 pull-request

要在本地环境中构建文档,请从项目目录执行:

tox -e docs

安装

要使用 pip 安装 Flask-Admin,只需:

pip install flask-admin

贡献

如果你是正在开发和维护 Flask-Admin 的开发者,请通过以下方式检出仓库:

git clone https://github.com/pallets-eco/flask-admin.git
cd flask-admin

Flask-Admin 使用 uv 来管理其依赖项和开发环境。在检出仓库后,要安装 Flask-Admin 支持的最低版本 Python,创建虚拟环境并安装所需的依赖项,请运行:

uv sync

这将安装 Flask-Admin,但不包含任何可选的额外依赖项,例如用于 sqlalchemy 或 mongoengine 支持的依赖项。要安装所有额外依赖项,请运行:

uv sync --extra all

最后,启用 pre-commit hooks:

pre-commit install

测试

测试使用 pytest 运行。如果你不熟悉这个包,可以在他们的网站上了解更多。

在 devcontainer 中运行测试(例如使用 VS Code 时)

如果你正在使用 devcontainer 配置进行开发,那么你可以直接使用以下任一命令运行测试。

若要仅使用默认的 python 安装运行测试套件,请使用:

uv run pytest

要在所有受支持的 python 版本上运行测试套件,并运行 CI 执行的其他检查,请使用:

uv run tox

通过 docker-compose run 一次性运行测试 / make test

如果你不使用 devcontainers,则可以使用 docker 运行测试(你需要自行安装和配置 docker)。然后你可以使用:

make test-in-docker

这将使用 devcontainer docker-compose 配置来启动 postgres、azurite 和 mongo。

你也可以使用以下命令运行包含 CI 检查的完整测试套件:

make tox-in-docker

第三方组件

Flask-Admin 借助 BootstrapSelect2Bootswatch 构建。

如果您想要本地化您的应用程序,请安装 Flask-Babel 包。

您可以通过提交 PR 来帮助改进 Flask-Admin 的翻译。

作为修改了 Flask-Admin 中某些文本的开发者

uv sync --group docs
cd babel
./babel.sh --update

作为更新了某些 .po/.mo 文件的翻译者

运行 cd babel 运行 ./babel.sh