如何在 web2py 中将动态创建的表添加到 SQLFORM

How to add dynamically created tables to SQLFORM in web2py

我已经在控制器中定义了计数器和字典变量。

我可以动态定义表。

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 中?

好像不需要字典。只需将表格放入列表即可。

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

form = SQLFORM.factory(*tables)