从SQLAlchemy模型在浏览器中自动创建可编辑网格

flask-gridif的Python项目详细描述


从sqlalchemy模型生成可编辑网格的烧瓶扩展。在 example回购目录您可以找到一个模拟烧瓶应用程序 演示扩展的功能和用法。代码片段 以下都是示例。在

使用

像其他flask扩展一样,你可以用应用程序初始化它。下面是 从回购中的“示例”应用程序。在

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_gridify import FlaskGridify

app = Flask(__name__)
db = SQLAlchemy(app)

# initialize the FlaskGridify extension
grid = FlaskGridify(app, flask_sqlalchemy_db=db, root_url_prefix='/grids')

然后对于每个需要网格的模型类,将调用gridify 上面的grid对象的函数,并传入SQLAlchemy模型 class

^{pr2}$

运行应用程序时,您将具有以下URL路由:

  • /
    • 此路径演示了Jinja宏的用法,该宏允许 在应用程序模板内创建网格
  • /网格/注释
    • 这是为注释模型创建的网格页面
  • /网格/用户
    • 这是为用户模型创建的网格页面

此外,扩展将为每个 应用程序可以使用的网格化模型类。它使用 FlaskRestless 扩展名,以便可以在那里找到有关格式和URL的信息

在模板中使用FlaskGridify

扩展还公开了可以用来嵌入的Jinja模板宏 页面中模型的可编辑网格。在 example/templates/index.html.jinja创建网格的模板文件 用户和注释模型类如下:

<div id="user-grid"></div>
<div id="note-grid"></div>
{{ macros.create_grid("user-grid", "user", GRID_REGISTRY["user"]) }}
{{ macros.create_grid("note-grid", "note", GRID_REGISTRY["note"]) }}

开发人员信息

此项目使用Makefile来构建、上载和运行示例应用程序。 您需要使用--dev安装pipenv,以确保 你有必要的开发包。在

  • make build
    • 这将生成包的源分发
  • make upload
    • 这将构建包并将其上载到pypi
  • make run
    • 这将运行repo中的示例应用程序

托多

  • 添加枚举字段支持
  • 添加关系字段支持
  • 多对一
  • 多对多
  • 清理公开的宏以避免引用GRID_REGISTRY
  • 依赖关系

    欢迎加入QQ群-->: 979659372 Python中文网_新手群

    推荐PyPI第三方库


    热门话题
    序列化反序列化java。awt。颜色>java。木卫一。InvalidClassException   java禁用多个日期范围jDateChooser   java为什么我的特例apper会被扔进泽西/灰熊?   JavaIntelliJ比较两个覆盖率数据   java什么是servletsdefault。你怎么办?   单击几下libgdx后java按钮没有响应   使用java将字符串转换为JSONArray   文件系统在java中刷新fileSystemViewer   java如何在hibernate中避免脏检查   java奇怪的问题,带有分号和“无法解决…”   java将值从子面板传递到父面板   HTML JTextPane CSS的Java FontSizeAction   java文件代码神秘地变成了一堆(0000)