Вы были почти там. $this->set('foo')
в Cake - это один из способов передачи переменных в view
.
Код, приведенный ниже, устанавливает переменную с именем current
, возвращаемое значение метода find
, которое имеет пользовательское условие, доступ к которому можно получить из представления. (В данном случае это массив; но вы можете установить что угодно)
Вам не нужно paginate()
здесь, если вы не планируете использовать нумерацию страниц в этом представлении.
Так что-то вроде этого должно сработать ($curr
- это плохое имя переменной, но я не чувствовал себя изобретательным. (resolved_tickets
было бы более логично (почему актуально?))
//controllers/tickets_controller
function current() {
$this->set('current', $this->Ticket->find('all',
array('conditions' => array('Ticket.status' => 'Resolved'),
'order' => array('Ticket.created' => 'desc')
)));
}
/views/tickets/current.ctp
<?php
$i = 0;
// adjust the variable in the foreach
foreach ($current as $curr):
$class = null;
if ($i++ % 2 == 0) {
$class = ' class="altrow"';
}
echo $curr['Ticket']['id']; // example
?>