当 CakePHP Model::save() 不尝试 INSERT 时如何调试 [英] How to debug when CakePHP Model::save() doesn't attempt an INSERT

查看:19
本文介绍了当 CakePHP Model::save() 不尝试 INSERT 时如何调试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我花了一些时间从名为 ItemView 的模型中保存最简单的记录:

I am having a bear of a time saving the simplest record from a model called ItemView:

if($this->save($this->data)) {
  echo 'worked';
} else {
  echo 'failed';
}

$this->data 在哪里:

Where $this->data is:

Array
(
    [ItemView] => Array
        (
            [list_id] => 1
            [user_id] => 1
        )
)

我的桌子是:

CREATE TABLE IF NOT EXISTS `item_views` (
  `id` int(11) NOT NULL auto_increment,
  `list_id` int(11) NOT NULL,
  `user_id` int(11) default NULL,
  `user_ip` int(10) unsigned default NULL,
  `created` datetime NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED AUTO_INCREMENT=1 ;

在调试模式下查看查询转储,Cake 甚至没有尝试插入,所以我不知道如何调试.

Looking at the query dump in debug mode, Cake isn't even attempting an INSERT, so I have no idea how to debug.

任何帮助将不胜感激.

推荐答案

哇,浪费了我生命中悲惨的两个小时.

Wow, two miserable hours of my life wasted.

记住你的beforeSave()必须返回true

这篇关于当 CakePHP Model::save() 不尝试 INSERT 时如何调试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆