У меня в контроллере есть следующий код:
function index()
{
$posts = $this->set('posts', $this->Portfolio->find('all'));
if (isset($this->params['requested']))
{
return $posts;
}
else
{
$this->set('posts', $this->Portfolio->find('all'));
}
}
, и я хочу, чтобы он а) отображал список портфолио элементы для индекса, например / портфолио /
, и б) показать список элементов портфолио внутри элемента, чтобы пользователь мог получить доступ к элементам портфолио с моей боковой панели на сайте.
Вот мой элемент для боковая панель:
<?php $posts = $this->requestAction('portfolio/index'); ?>
<ul>
<?php foreach ($posts as $post): ?>
<li><?php echo $this->Html->link($post['Portfolio']['title'], array('action' => 'view', $post['Portfolio']['id']));?></li>
<?php endforeach; ?>
</ul>
, а затем я называю это так в моем макете:
<?php $this->element('portfolio-nav', array('posts' => $posts) ); ?>
Однако он дает следующую ошибку:
Notice (8): Undefined variable: posts [APP/controllers/portfolio_controller.php, line 16]
И не отображает список элементов на боковой панели.
Я почти уверен то, что я написал в своем контроллере, - мусор, так что если кто-нибудь может помочь мне заставить его работать, это было бы здорово.
Спасибо