SilverStripe GridField 和 ModeAdmin 创建/读取/更新/删除 return 个值
SilverStripe GridField and ModeAdmin create / read / update / delete return values
在使用 SilverStripe GridField 或 ModelAdmin 创建/读取/更新/删除时,如何检查创建/读取/更新/删除操作的 return 值(例如成功、错误等) ?
例如 GridField 和 ModelAdmin 甚至在按下保存按钮之前提交更改。
这是数据对象的示例验证器...当您拥有它时,它会在每次保存时调用 "checks" 保存前表单中的值,并且可以在旁边引发验证错误/消息按名称的特定表单字段...
class ObjectA extends DataObject {
static $db = array(
"Name" => "Varchar",
);
function getCMSValidator() {
return new ObjectA_Validator();
}
function getValidator() {
return new ObjectA_Validator();
}
}
class ObjectA_Validator extends RequiredFields {
function php($data) {
$bRet = parent::php($data);
if (ObjectB::get()->filter('OtherName',$data['Name']))
$this->validationError('Name','ObjectB exists with that name',"required");
return count($this->getErrors());
}
}
在使用 SilverStripe GridField 或 ModelAdmin 创建/读取/更新/删除时,如何检查创建/读取/更新/删除操作的 return 值(例如成功、错误等) ?
例如 GridField 和 ModelAdmin 甚至在按下保存按钮之前提交更改。
这是数据对象的示例验证器...当您拥有它时,它会在每次保存时调用 "checks" 保存前表单中的值,并且可以在旁边引发验证错误/消息按名称的特定表单字段...
class ObjectA extends DataObject {
static $db = array(
"Name" => "Varchar",
);
function getCMSValidator() {
return new ObjectA_Validator();
}
function getValidator() {
return new ObjectA_Validator();
}
}
class ObjectA_Validator extends RequiredFields {
function php($data) {
$bRet = parent::php($data);
if (ObjectB::get()->filter('OtherName',$data['Name']))
$this->validationError('Name','ObjectB exists with that name',"required");
return count($this->getErrors());
}
}