小精灵

dodotable的Python项目详细描述


Latest PyPI versionDocumentation Statushttps://travis-ci.org/spoqa/dodotable.svg?branch=master

SQLAlchemy的HTML表表示。

sqlalchemy到<table>

假设您有一个名为music的实体。它看起来像下面。

classMusic(Base):id=Column(Integer,primary_key=True)name=Column(Unicode,nullable=False)

下面的代码呈现一个可排序的表,该表由一个音乐列表组成。

fromdodotable.schemaimportTable,Columntable=Table(cls=Music,label='music table',columns=[Column(attr='id',label=u'id',order_by='id.desc'),Column(attr='name',label=u'name'),],sqlalchemy_session=session)print(table.select(offset=0,limit=10).__html__())

Flask

一起使用

Flask使用Jinja2作为模板引擎。正如他们提到的 文档[1]\ 继承dodotable.schema.Renderable将实例转换为HTML 直接在Jinja2中。用Flask重新编写之前编写的示例。

fromdodotable.schemaimportTable,ColumnfromflaskimportFlask,render_template,requestapp=Flask(__name__)@app.route('/musics/',methods=['GET'])deflist_musics():table=Table(cls=Music,label='music table',columns=[Column(attr='id',label=u'id',order_by=request.args.get('order_by')),Column(attr='name',label=u'name'),],sqlalchemy_session=session)returnrender_template('list_musics.html',table=table.select(limit=request.args.get('limit'),offset=request.args.get('offset')))

而作为jinja2模板的list_musics.html如下所示。

<html>
  <body>
    {{ table }}
  </body>
</html>
[1]http://jinja.pocoo.org/docs/dev/api/#jinja2.Markup

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

推荐PyPI第三方库


热门话题
无生物特征对话框的java Android生物特征认证   Java(Linux)和Windows系统之间的socket字符编码   java在Spring引导应用程序中使用JSF   java在没有类型转换的情况下访问父类型的arraylist中的特定子类型方法,子类型的创建只有在运行时才知道   java死锁线程检查   java Spring引导MySQL不批处理插入   java如何在Android文本视图中显示来自Firebase的消息列表?   Android API 24<与java一起崩溃。lang.NoClassDefFoundError:com。谷歌。常见的基础CharMatcher   如何在Java中修改JSON对象内的值   java解析JAR run命令中所需的参数   java从PRAGMA表_info()获取名称和类型   java如何删除字符串中的重复项,例如:“我的名字是这个和那个这个和那个”输出将是“我的名字是这个和那个”   java在自动连接DAOBean时自动连接类   集合的java通用返回类型   java在不覆盖现有点的情况下向对象添加点