SilverStripe 3: Как отобразить информацию об сегменте URL / странице объекта DataObject

Я получаю все свои объекты DataObject из определенного класса и отображаю их случайным образом на другой странице. Мне нужно получить доступ к сегменту URL страницы, к которой они принадлежат. Как мне это сделать?
Я пробовал $ URLSegment $ UP.URLSegment $ Parent.URLSegment и т. Д., Который я вижу, почему они не будут работать. Я понимаю, что у dataobject нет собственного URL. Мне просто нужен URL-адрес его страницы, так как это его категория.

PHP функция:

function Stockists()
{
$stockists = Stockist::get()->sort('RAND()');
return $stockists ? $stockists : false;
}

шаблон

<% loop $Stockists %>
$Title
$URLSegment (does not work)
<% end_loop %>

2

Решение

Спасибо Марк Гуинн.
Оказалось, я мог бы использовать

$StockistArea.URLSegment

как да Stockist является классом объекта данных и имеет

 private static $has_one = array(
'StockistArea' => 'StockistArea'
);

на страницу StockistArea! Надеюсь, это кому-нибудь поможет, так как я ничего не смог найти.

1

Другие решения

Других решений пока нет …