【问题标题】:CakePHP 3.0 database modificationCakePHP 3.0 数据库修改
【发布时间】:2015-04-09 08:34:08
【问题描述】:

几天前我制作了一个新的 CakePHP 应用程序,我制作了 Bookmarker Example

在该示例中,SQL 脚本显示表 usersbookmarkstags 各有两个字段,分别名为 createdupdated。 所以我在 MySQL 数据库中运行了这个脚本。

但今天早上我意识到我所有的条目中 updated 字段都是空的。
经过一番搜索,我发现该字段必须命名为 modified 而不是 updated 才能由 CakePHP 填充。

我的问题是:现在我已经烘焙了包含所有模型、表格和控制器的应用程序,我想将 updated 更改为 modified,我是否必须“重新烘焙”我的表格?

【问题讨论】:

  • 不只是更改表结构并记住将debug模式设置为2并确保从临时文件夹中清除model缓存。
  • 在 CakePHP 3.0 中,debug 模式不是 truefalse 吗?
  • 是的,这是我的错,错过了。

标签: php mysql database cakephp cakephp-3.0


【解决方案1】:

我做到了。不用重新烘焙,我只是在phpmyadmin的每个表中重命名modified中的字段updated,然后改了:

<th><?= $this->Paginator->sort('updated') ?></th>
转入
<th><?= $this->Paginator->sort('modified','Updated') ?></th> //sort([field],[label])

<td><?= h($bookmark->updated) ?></td> //in that case, it was Bookmarks/index.ctp
进入
<td><?= h($bookmark->modified) ?></td>

BookmarksUsersTags的index.ctp中。


还有:

<p><?= h($bookmark->updated) ?></p>
转入
<p><?= h($bookmark->modified) ?></p>

<td><?= h($tags->updated) ?></td>
转入
<td><?= h($tags->modified) ?></td>

在 3 个表的 view.ctp 中。


它现在运行良好,当我更新它时,Cake 会填写 modified 字段。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 1970-01-01
    • 2017-05-24
    • 2016-02-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多