andrewhaine / silverstripe-sitetree-inheritance-helpers
一个SilverStripe模块,为您的网站树添加一些辅助方法,以帮助处理继承值和关系
dev-master
2018-04-23 08:16 UTC
Requires
- silverstripe/cms: ^4.1
- silverstripe/framework: ^4.1
- silverstripe/vendor-plugin: ^1
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 %>
问题 & 贡献
这个项目开发得相当快,欢迎任何问题报告或改进建议:)-在问题部分见