1

似乎这应该是容易的部分,但我似乎无法做到这一点。我的createdupdated字段没有被填充。我尝试将这些字段重命名为不同的名称,但不行。除了如下所示的架构和设置类(非常基本)之外,我是否遗漏了什么?

Codeigniter v2.1.2 Datamapper ORM v1.8.2.1

架构:

CREATE TABLE `users` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(255) NOT NULL,
  `password` varchar(255) NOT NULL,
  `created` datetime NOT NULL,
  `updated` datetime NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `username` (`username`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1

用户等级:

<?php

class User extends DataMapper
{

    function User()
    {
        parent::DataMapper();
    }

}
4

2 回答 2

6

好的,找到了答案,希望这会对某人有所帮助。我需要在 application/config/datamapper.php 文件中设置以下内容:

$config['local_time'] = TRUE;
$config['unix_timestamp'] = FALSE;
$config['timestamp_format'] = 'Y-m-d H:i:s';
于 2012-07-18T16:06:05.370 回答
0

在您的 config/datamapper.php 文件中,确保设置“created_field”和“updated_field”以匹配您的数据库列。或者您可以在模型本身中覆盖它们。IE。

<?php

class User extends DataMapper
{
    var $created_field = 'created';
    var $updated_field = 'updated';

    function User()
    {
        parent::DataMapper();
    }

}
于 2012-07-18T12:45:45.097 回答