【问题标题】:How to add dynamically created tables to SQLFORM in web2py如何在 web2py 中将动态创建的表添加到 SQLFORM
【发布时间】:2016-03-19 06:55:33
【问题描述】:

我已经在控制器中定义了 counter 和 dict 变量。

我可以动态定义表格。

for x in range(0,counter+1):
    dict['%s' % x] = db.define_table('example_table_%s' % x,
        Field('example_field', type='string', ...)
        ...
        )

当计数器值为'2'时,我可以手动添加所有创建的表。

form = SQLFORM.factory(
    db.some_table,
    db.another_table,
    dict['0'],
    dict['1'],
    dict['2'],
    submit_button='Submit')

如何将所有创建的表动态添加到 SQLFORM 中?

【问题讨论】:

    标签: python forms web2py


    【解决方案1】:

    似乎不需要字典。只需将表格放在列表中即可。

    tables = [db.define_table('example_table_%s' % x,
                              Field('example_field', type='string', ...)
                              ...
                              )
              for x in range(0, counter+1)]
    
    form = SQLFORM.factory(*tables)
    

    【讨论】:

    • 您还有其他问题吗?如果是这样,我不明白你在找什么。也许编辑原始问题或创建一个新问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-02
    • 2020-02-12
    • 2011-06-28
    • 2021-02-14
    相关资源
    最近更新 更多