Для полей с использованием функций MySQL, таких как DATE()
. Вы можете использовать Virtual Fields. В вашем случае, вы бы добавить что-то подобное для вашей модели Gameline:
public function __construct($id = false, $table = null, $ds = null) {
parent::__construct($id, $table, $ds);
$this->virtualFields = array(
'date' => 'DATE(' . $this->alias . '.g_time)'
);
}
Таким образом, форматированный дата будет доступен в качестве виртуального поля date
(используйте другое имя, если у вас уже есть поле, который вызывается так).
Затем в вашей операции find()
выберите новое виртуальное поле date
. Чтобы вывести эти результаты на ваш взгляд, вы можете просто перебрать свой набор результатов. Допустим, вы храните find()
результат в качестве параметра вида называется $data
, то вы бы отобразить таблицу как:
<table>
<thead>
<tr>
<th>Date</th>
<th>Count</th>
</tr>
</thead>
<tbody>
<?php foreach ($data as $row): ?>
<tr>
<td><?php echo $row['Gameline']['date']; ?></td>
<td><?php echo $row['Gameline']['count']; ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
Пожалуйста, поделитесь своими (Cake) PHP код. Поскольку запрос, который у вас есть на скриншоте, - это не запрос, который вы запускаете в своем приложении. Потому что вы используете метод CakePHP (я полагаю). Так можете ли вы вставить свой код, пожалуйста? И ваши результаты? – Jelmer
$ date_count = $ this-> Gameline-> найти ('количество', \t \t \t массив ( \t \t \t \t 'поля' => 'Gameline.g_time', \t \t \t \t 'группа' => ' Дата ('g_time') ', \t \t \t) \t \t); \t \t $ this-> set ('game_counts', $ date_count); –
Пожалуйста, обновите свой OP этим. – Jelmer