我在Silverstripe 3.1中有三个DataObjects:一个问题,一个投票和一个选民.问题有很多投票; 投票有一个选民和一个问题.在我的Issue_show页面上,我想显示所有问题的投票,按选民姓名排序.
问题中的函数如下所示:
public function MyVotes() {
return $this->Votes();
}
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何访问选民的名字来进行排序.据推测,应该是这样的
public function MyVotes() {
return $this->Votes()->sort('Voter.Name');
}
Run Code Online (Sandbox Code Playgroud)
但是这会引发错误.我错过了什么步骤?
小智 7
对于has_one关系,您需要将ID后缀添加到fieldname.此外,不幸的是,DataList-> sort()中的关系转换仅适用于数组.
public function MyVotes() {
return $this->Votes()->sort(array('VoterID.Name'=>'ASC'));
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
891 次 |
| 最近记录: |