andrewhaine / silverstripe-sitetree-inheritance-helpers

一个SilverStripe模块,为您的网站树添加一些辅助方法,以帮助处理继承值和关系

dev-master 2018-04-23 08:16 UTC

This package is auto-updated.

Last update: 2024-09-13 10:46:25 UTC


README

一个为SiteTree添加一些额外方法的模块,使其更容易在页面树中搜索要继承的值或关系。请注意,此模块仅与SilverStripe 4.1+兼容。

问题

你是否厌倦了编写方法或模板循环来检索数据库值或父页面的关系?那么这个模块正是你所需要的!

引入辅助方法

目前,此模块添加了两个方法来帮助处理继承值。这些方法可以在你的页面PHP类中使用,或者从模板文件中调用。

获取数据库字段值

如果你只需要一个数据库值,你可以使用getInheritedDBValue

示例

CustomPage.php

public function getMyDataBaseValue()
{
    return $this->getInheritedDBValue('FieldName');
}

CustomPage.ss

<span>{$getInheritedDBValue('FieldName')}</span>

获取关系值

如果你需要从父页面获取一个关系,例如一个$has_one或一个$many_many,你可以使用getInheritedRelationValue。当关系是一个列表时,此方法需要一个额外的参数设置为true。

示例

CustomPage.php

public function getMyInheritedList()
{
    return $this->getInheritedRelationValue('SomeList', true);
}

CustomPage.ss

<% loop $getInheritedRelationValue('SomeList', true) %>
    \\\
<% end_loop %>

问题 & 贡献

这个项目开发得相当快,欢迎任何问题报告或改进建议:)-在问题部分见