cakephp 保存返回 true 但不保存
Posted
技术标签:
【中文标题】cakephp 保存返回 true 但不保存【英文标题】:cakephp save returns true but does not save 【发布时间】:2009-11-05 05:38:00 【问题描述】:Cakephp 快把我逼疯了!
这是我的代码:
if($this->Page->save($datavalue))
$this->Session->setFlash('Page content updated successfully.');
else
$this->Session->setFlash('Page content was not updated.');
它总是说更新成功,但数据库中没有任何更新。 这是$datavalue的内容:
Array
(
[Page] => Array
(
[id] => 1
[name] => home
[title] => Home page1
[meta_keywords] => keyword1
[meta_description] => this is home page
[content] => home page content
[sidebar] => sidebar content
)
)
我是 CakePHP 的新手,能否请您大致了解一下它可能出了什么问题?
提前致谢。
-happyhardik
这是我的型号代码:
<?php
class Page extends AppModel
var $name='Page';
var $useTable = false;
?>
希望这会有所帮助! 我尝试在保存之前添加这两行,希望它会有所帮助:
$this->Page->set($datavalue);
$this->Page->id = $id;
但他们都没有帮助。
这是表结构:
id int(10) UNSIGNED auto_increment Primary
name varchar(250)
title varchar(250)
meta_keywords text
meta_description text
content text
sidebar text
created datetime
modified datetime
如果需要更多信息,请告诉我。 感谢阅读。
【问题讨论】:
在core.php
中将调试设置为2
,并告诉我们您的SQL 调试是什么样的。
其设置为 3,页面底部显示:(默认)0 查询耗时毫秒
您是否为 Page 定义了任何验证规则?
您是否在 Page 模型中做任何时髦的事情,例如覆盖 save()
方法?
我没有任何验证或我没有覆盖保存方法,请检查我上面的模型代码。我不知道如何在 Cake 中添加时髦的东西,因为我还在弄清楚它是什么。 :)
【参考方案1】:
var $useTable = false;
嗯,你没有使用任何表,这使得save()
几乎是一个 NOOP。 :-)
删除那条线,你应该没问题。
【讨论】:
【参考方案2】:我有同样的问题,谷歌把我带到这里
我启用了public $scaffold
,因此无法保存。
只是一个参考,以防任何人有同样的问题
【讨论】:
以上是关于cakephp 保存返回 true 但不保存的主要内容,如果未能解决你的问题,请参考以下文章