python - Flask-Admin 与 Flask-AppBuilder

标签 python flask flask-admin

我是 Flask 的新手,注意到有两个插件可以启用 CRUD View 和授权登录,Flask-AdminFlask-AppBuilder

这两个功能以及我的模型的漂亮Master-Detail View 让我很感兴趣,我可以在同一屏幕上看到主表的行和相关详细信息。

知道更喜欢哪一个吗?我看到 Flask-AppBuilder 在 Github 中有更多的提交,而 Flask-Admin 有更多的 stars。

如何在不花太多时间做出错误选择的情况下区分两者?

最佳答案

我是 Flask-AppBuilder 的开发者,所以这里可能有强烈的偏见。我会尽量给你我最诚实的看法。我不太了解 Flask-Admin,所以我可能会犯一些错误。

Flask-Admin 和 Flask-AppBuilder:

  • 都会为您提供带 Bootstrap 的 Flask 管理界面。
  • 都会尽力让开。
  • 都将帮助您开发更加面向对象风格的 Flask。
  • 都会让您覆盖管理模板上的几乎所有内容。
  • 都会支持 Babel。
  • 两者都受到 Django-Admin 的启发。

Flask-AppBuilder 的优点:

  • 具有更好的外观和感觉(偏见?也许...)。
  • 安全性已为您妥善处理,支持开箱即用、数据库、LDAP、OpenID、Web 服务器集成 (REMOTE_USER),并在不久的将来支持 OAuth。将使您扩展用户模型和安全 View 。
  • 精细权限,为每个网络公开的方法和操作创建一个权限(您必须尝试)。
  • 您可以轻松呈现 Google 图表。
  • 项目越小,请求新功能和合并拉取请求就越容易。
  • 可以轻松设置 MasterDetail View 和多个 View 。
  • 后端:支持 SQLAlchemy、MongoEngine、GenericInterface(您可以与自己的内置数据集成,但仍处于测试阶段)。

Flask-Admin 的优点:

  • 您必须组装自己的安全性(模型、 View 、身份验证等),它已经准备好与 flask-security 很好地集成。这可能是有利的,也可能是不利的,具体取决于您想要什么。
  • 内置文件管理器。
  • 更大的项目和更大的社区。
  • 后端:支持 SQLAlchemy、GeoAlchemy、MongoEngine、Pewee 和 PyMongo。
  • 更好地支持 MongoEngine(EmbeddedDocument、ListFields 等)。

总的来说,我认为 Flask-Admin 不像 Flask 那样做任何假设,你必须编写更多代码,但这会让你更自由。 Flask-AppBuilder 做了一些假设(关于安全性),您将不得不编写更少的代码,但如果您构建非常具体的安全模型,有些事情可能会发生。

希望这对你和其他人有帮助,我尽力避免偏见。

关于python - Flask-Admin 与 Flask-AppBuilder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30126607/

相关文章:

python - 根据登录用户隐藏 Flask-Admin 中的字段?

python - 如何使用应用程序工厂正确设置 flask-admin View ?

python - Flask-Admin 和模型中的自定义字段

python - 如何将列表拆分为大小相等的 block ?

python - 将自定义标签添加到 pytorch 数据加载器/数据集不适用于自定义数据集

python - 如何知道 matplotlib 安装启用的功能?

python - 在 python 上使用 mysql 时出现错误,例如 fromflask.ext.mysql import MySQL

http - GET 和 POST 方法的独立 Flask 路由

python - 从数据库或 session 数据填充字段的正确方法是什么?

python - Pandas 中的条件合并