在Cake应用程序中,如果用户提交表单来编辑记录,您认为哪种方法可以概述特定的更改?我想将值显示给用户正在更改的所有字段,并为他们提供确认更改或返回并更改它们的选项。我假设它将涉及将提交的数据与现有记录进行比较,但我希望Cake有一些内置功能来执行此操作。有什么想法吗?我也对任何javascript解决方案都持开放态度,但我希望对仍然在石器时代运营的用户提供Cake回退。
答案 0 :(得分:1)
这似乎是一个过时的过程,以验证输入。我可以看到为计费屏幕执行此操作,但不一定每次用户都想编辑记录。这就像我们质疑他们的质量并说:“你确定你输入的一切都正确吗?”我认为这是糟糕的设计,应该避免。他们会知道他们是否犯了错误。如有必要,他们可以轻松返回并再次进行更改。
我建议提供简单的表单验证(确保电子邮件地址实际上是电子邮件地址,检查电话号码等)。除此之外,由用户输入正确的信息。经常被问到“你确定吗?”这会让人烦恼。
话虽这么说,一种方法(如果你必须)是修改你的默认方法。例如,如果您在信息控制器中使用名为update()的函数,则可以编写如下内容:
function update() {
if($this->data) {
if($this->data['Information']['confirmed']) {
// save updated information
} else {
// display changes to be made (use hidden fields and add confirmed=1)
}
}
// display edit form
}
我认为如果可能的话,将功能全部保留在同一方法中是一种赌注。它可以防止代码遍布整个地方并变得无法管理。
祝你好运!答案 1 :(得分:0)
最好的方法是在数据库中创建一个字段,默认情况下或第一次填充时将其设置为0,一旦确认就将其设置为1