Flask-Admin vs Flask-AppBuilder

pet*_*amb 9 python flask flask-admin

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

这两个特性让我感兴趣的是我的模型的Master-Detail视图,我可以在同一个屏幕上看到主表的行和相关的详细信息.

知道哪一个更喜欢?我看到Flask-AppBuilder在Github上有更多的提交,而Flask-Admin有更多的明星.

如何分辨,不花太多时间选错?

dpg*_*par 24

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

Flask-Admin和Flask-AppBuilder:

  • 两者都会为Flask提供一个带引导程序的管理界面.
  • 两者都会尽力避开你的方式.
  • 两者都会帮助您开发更多面向对象的Flask风格.
  • 两者都可以覆盖管理模板上的几乎所有内容.
  • 两者都支持巴贝尔.
  • 两者都受到了Django-Admin的启发.

Flask-AppBuilder的优点:

  • 有更好的外观和感觉(偏见?也许......).
  • 安全性已经为您服务,并支持开箱即用,数据库,LDAP,OpenID,Web服务器集成(REMOTE_USER),以及在不久的将来OAuth.将让您扩展用户模型和安全性视图.
  • 细化权限,为每个Web公开的方法和操作创建一个权限(您必须尝试).
  • 您可以轻松呈现Google图表.
  • 较小的项目,更容易请求新功能,并将您的拉取请求合并.
  • 可以轻松设置MasterDetail视图和多个视图.
  • 后端:支持SQLAlchemy,MongoEngine,GenericInterface(您可以与自己的内置数据集成,还有点测试版).

Flask-Admin的优点:

  • 你必须组装自己的安全性(模型,视图,身份验证等),它已经准备就绪,可以很好地与flask-security集成.根据您的需要,这可以是专业人士或骗子.
  • 内置文件管理员.
  • 更大的社区更大的项目.
  • 后端:支持SQLAlchemy,GeoAlchemy,MongoEngine,Pewee和PyMongo.
  • 更好地支持MongoEngine(EmbeddedDocument,ListFields等).

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

希望这有助于你和其他人,我尽力保持偏见.