2015-12-13 27 views
0

我在控制器中定義了計數器和字典變量。如何在web2py中動態創建表格到SQLFORM

我可以動態地定義表格。

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?

回答

0

似乎沒有任何字典的需要。把表格放在一個列表中。

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

form = SQLFORM.factory(*tables) 
+0

您是否問另一個問題?如果是這樣,我不明白你在找什麼。也許編輯原始問題或創建一個新問題。 – Anthony

+0

我提出了一個新問題:http://stackoverflow.com/questions/34314669 – Henri