2012-04-22 54 views
2

我想实现一个窗体,其中每个字段有多个选项,它必须是复选框的行。我想显示这个表格,在行标题中的字段名称和相应行中的复选框选项。我也需要数据库表的实现方面的帮助。任何帮助将不胜感激。我是web2py的新手。提前致谢。Web2py - 多选项复选框实现

回答

0

你到目前为止尝试过什么?这听起来像你想与布尔值的数据模型:

(在模型/ ??? PY - 确保它db.py后执行,并且您已经定义了一个DB)

db.define_table('table_name', 
    Field('SomeFieldA', 'boolean') 
    Field('SomeFieldB', 'boolean') 
    Field('SomeFieldC', 'boolean') 
    Field('SomeFieldD', 'boolean') 
    ... etc ... 
) 

你可能不得不实现一个自定义表单来获得你想要的布局,因为我想不出一种现成的方式来做到这一点。请参阅custom forms here

你需要开始是这样的:

<table> 
{{=form.custom.begin}} 
    <thead> 
    <tr> 
    {{ #loop over form field labels... something like: 
     for field in form.fields: }} 
     <th>{{=field.label}}</th> 
    {{ pass }} 
    </tr> 
    </thead> 

    <tbody> 
    <tr> 
    {{for field in form.fields: }} 
     <td>{{ =form.custom.widget[field] }}</td> 
     {{ # or directly access it without a loop with form.custom.widget.SomeFieldA }} 
    {{ pass }} 
    </tr> 
    </tbody>  

    {{=form.custom.submit}} 
{{=form.custom.end}} 
</table> 

请注意,我没有测试过此代码的任何,我可能访问表单字段和标签不正确。如果您需要预先填写表格,请在控制器中进行。上面的自定义表单链接也讨论了预填充。