heyday / silverstripe-dataobjectpreview

允许在GridField中预览数据对象

安装次数: 4,533

依赖项: 2

建议者: 0

安全性: 0

星标: 9

关注者: 27

分支: 4

类型:silverstripe模块

1.0.5 2015-11-12 09:41 UTC

This package is auto-updated.

Last update: 2024-08-29 04:14:21 UTC


README

提供在CMS中预览数据对象的能力。

安装(使用composer)

$ composer require heyday/silverstripe-dataobjectpreview

文件系统权限

此模块中的cache/目录需要PHP可写,以便数据对象预览功能正常工作。预览在此渲染到文件,以避免重复渲染相同的内容。

当通过Composer安装时,您可能想在自己的项目的composer.json中添加一个后安装脚本以配置这些权限。例如

{
    // ...

    "scripts": {
        "post-install-cmd": [
            "chmod 777 silverstripe-dataobjectpreview/cache"
        ]
    }
}

示例

DataObject Preview Example

使用方法

您想要预览的数据对象必须实现DataObjectPreviewInterface,它包含一个方法getPreviewHtml

此方法getPreviewHtml必须返回一个字符串。

getPreviewHtml

public function getPreviewHtml()
{
	return "<html><body>Hello</body></html>";
}

DataObjectPreviewField

getCMSFields

$fields->addFieldToTab(
	'Root.Main',
	new DataObjectPreviewField(
		'SomeDataObject',
		$this,
		new DataObjectPreviewer($generator)
	)
);

GridFieldDataObjectPreview

getCMSFields

$fields->addFieldsToTab(
	'Root.Items',
	new GridField(
		'Items',
		'Items',
		$this->Items(),
		$config = GridFieldConfig_RelationEditor::create()
	)
);

$config->addComponent(
	new GridFieldDataObjectPreview(
		new DataObjectPreviewer($generator)
	)
);

许可证

SilverStripe数据对象预览在MIT许可证下授权