Silverstripe Gridfield关系
我正在尝试将安全文件silverstripe模块更新为SS3 在其中,作者使用了以下ComplexTable字段:Silverstripe Gridfield关系,silverstripe,Silverstripe,我正在尝试将安全文件silverstripe模块更新为SS3 在其中,作者使用了以下ComplexTable字段: class SecureFileTokenPermissionDecorator extends DataExtension { static $has_many = array( 'AccessTokens' => 'SecureFileAccessToken' ); .... $tokenLis
class SecureFileTokenPermissionDecorator extends DataExtension {
static $has_many = array(
'AccessTokens' => 'SecureFileAccessToken'
);
....
$tokenList = new ComplexTableField(
$this->owner,
'ContainedFileTokens',
'SecureFileAccessToken',
null,
null,
"File.ParentID = '{$this->owner->ID}'",
$sourceSort = null,
"JOIN File ON FileID = File.ID"
));
$tokenList->setParentIdName('FolderID');
$tokenList->setRelationAutoSetting(false);
....
}
我想知道如何用Gridfield表示相同的数据/关系。
谢谢 查看模块源代码,我建议进行以下设置:
$tokenList = $gridField = new GridField(
'AccessTokens',
'Tokens',
$this->owner->AccessTokens(),
GridFieldConfig_RelationEditor::create()
);
这直接作用于关系getter,它是一个延迟加载的列表(在必要时才查询),并自动分页。我不太确定setParentIdName(“FolderID”)
如何适合这里,可能没有必要。注意:尚未在实际的代码库上尝试此操作
如果您需要在更高层次上理解API的帮助,请查看和
感谢您帮助为SS3准备模块:)