我有一个模型 Gameline 和控制器 GamelinesController 和数据库'gamelines'。我想运行这个查询
这意味着有一条记录属于 2013-02-18,有两条记录属于 2013-02-25。
之后如何循环属于视图中每个 g_time 字段的计数请帮助我。
对于使用 MySQL 函数的字段,例如DATE()
. 您可以使用虚拟字段。在你的情况下,你会在你的 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>