如何在hook_schema()中正确实现mysql date或datetime字段?
我已经编写了一个mymodule.install文件,其中包含一个架构定义以在数据库中创建表。该表包含两个数据字段。当用户填写特定内容(例如:指定新闻的特定发布日期)时,这些字段将由用户填充。现在,我没有故意使用“日期”贡献模块,因为出于其他原因,我需要将这两个字段放在数据库表的同一行中。 hook_schema用这种方式定义了两个字段: 'pubblish_date' => array( 'description' => t('The pubblish date for the single news'), 'mysql_type' => 'datetime', 'not null' => FALSE, ), 'unpublish_date' => array( 'description' => t('The unpublish date for the single news'), 'mysql_type' => 'datetime', 'not null' => FALSE, ), 该表已在数据库中正确创建,但是我总是收到这些建议消息: 字段news_board.pubblish_date:否mysql类型datetime的模式类型。字段news_board.unpublish_date:否mysql类型datetime的模式类型。news_board.pubblish_date:模式类型:普通没有类型。字段news_board.pubblish_date:类型的架构类型。news_board.unpublish_date:模式类型:普通没有类型。字段news_board.unpublish_date:没有type的架构类型。 对我来说似乎很奇怪,原因是我在文档中使用mysql_type规范来将日期时间格式存储在mysql数据库中。 我知道Drupal本机支持时间戳,如果要存储其他日期格式,则必须根据所使用的数据库使用特定的定义,例如mysql_type或pgsql_type。 在讨论中,我发现在线上有很多人使用mysql_type定义,从我的看到,他们解决了问题,那么为什么它对我不起作用? 非常感谢。