Within my template, I'm trying to loop display individual Links organized by their respective LinkCategories. Do I have my model set up completely wrong to achieve this? As it is, I can't get the template to output any data.
LinkHolder.php
<?php
class LinkHolder extends Page {
static $singular_name = 'LinkHolder';
static $plural_name = 'LinkHolders';
static $has_many = array(
'Links' => 'Link'
);
function getCMSFields() {
$fields = parent::getCMSFields();
$misAmigosTable = new ComplexTableField($this, 'Links', 'Link');
$fields->addFieldToTab('Root.Content.Mis Amigos', $misAmigosTable);
return $fields;
}
}
class LinkHolder_Controller extends Page_Controller {}
?>
Link.php
<?php
class Link extends DataObject {
static $singular_name = 'Link';
static $plural_name = 'Links';
static $db = array(
'LinkURI' => 'Text',
'LinkDisplay' => 'Text',
'LinkCategory' => 'Varchar(100)'
);
static $has_one = array(
'LinkHolder' => 'LinkHolder'
);
function getCMSFields() {
$categories = array(
'MisAmigos' => 'Mis Amigos'
);
$fields = new FieldSet(
new TextField('LinkURI', 'Link URI'),
new TextField('LinkDisplay', 'Link Display Text'),
new DropdownField('LinkCategory', 'Link Category', $categories)
);
return $fields;
}
}
?>
LinkHolder.ss
<% if Links %>
<% if LinkCategory == MisAmigos %>
<ul id="mis-amigos" class="links">
<h5>$LinkCategory</h5>
<% control Links %>
<li><a href="$LinkURI">$LinkDisplay</a></li>
<% end_control %>
</ul>
<% end_if %>
<% end_if %>