我喜欢web2py smartgrid创建自动子链接到引用表的方式。但我找不到如何自定义它们。
我想只显示一些子表链接(见图). 我知道我可以通过指定的 linked_tables
选项。而且我可以使用该选项来制作新的自定义的 links
. 我可以用 fields
来隐藏主表的列。
但我如何隐藏一个或多个自动生成的表的子列,这些子列是为 是 列入 linked_tables
?
是否可以更改链接文本?
在控制器中,在创建smartgrid的方法中,你可以将任何链接的列隐藏起来,方法如下
db.TableOfTheColumnToHide.columnToHide.readable = False
我经历了一个地狱的时间来得到这个解决方案
grid = SQLFORM.smartgrid(db.child, linked_tables=['parent'],link=dict(child=links),searchable= dict(child=True, parent=False),create=dict(child=True, parent=False),deletable=dict(child=True, parent=False),ededitable=dict(child=True, parent=False),details=dict(child=True, parent=False))
同样的,你也可以修改保管链接。