-1

我有一个模型 Gameline 和控制器 GamelinesController 和数据库'gamelines'。我想运行这个查询

在此处输入图像描述

这意味着有一条记录属于 2013-02-18,有两条记录属于 2013-02-25。

之后如何循环属于视图中每个 g_time 字段的计数请帮助我。

4

1 回答 1

1

对于使用 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>
于 2013-02-23T10:41:56.747 回答