SilverStripe从SiteTree关系

时间:2016-10-17 10:02:15

标签: php silverstripe

所以我有这个:

private static $has_one = array(
    'ButtonLink' => 'SiteTree'
);

和此字段

$fields->addFieldToTab('Root.Main', TreeDropdownField::create("ButtonLink", "Page link", "SiteTree"));

这样用户就可以将此DataObject链接到SiteTree中的页面。在前端我尝试将URLSegment作为:

返回
$ButtonLink.Link

但它没有任何回报。

1 个答案:

答案 0 :(得分:4)

找到它。您需要将 ID 附加到字段标识符,因为它是保存外部记录引用密钥的数据库列名(SiteTree)。

$fields->addFieldToTab('Root.Main', TreeDropdownField::create("ButtonLinkID", "Page link", "SiteTree"));