當前位置: 首頁>>代碼示例>>PHP>>正文


PHP DataObject::newClassInstance方法代碼示例

本文整理匯總了PHP中SilverStripe\ORM\DataObject::newClassInstance方法的典型用法代碼示例。如果您正苦於以下問題:PHP DataObject::newClassInstance方法的具體用法?PHP DataObject::newClassInstance怎麽用?PHP DataObject::newClassInstance使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在SilverStripe\ORM\DataObject的用法示例。


在下文中一共展示了DataObject::newClassInstance方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: saveFormIntoRecord

 /**
  * Loads the given form data into the underlying dataobject and relation
  *
  * @param array $data
  * @param Form $form
  * @throws ValidationException On error
  * @return DataObject Saved record
  */
 protected function saveFormIntoRecord($data, $form)
 {
     $list = $this->gridField->getList();
     // Check object matches the correct classname
     if (isset($data['ClassName']) && $data['ClassName'] != $this->record->ClassName) {
         $newClassName = $data['ClassName'];
         // The records originally saved attribute was overwritten by $form->saveInto($record) before.
         // This is necessary for newClassInstance() to work as expected, and trigger change detection
         // on the ClassName attribute
         $this->record->setClassName($this->record->ClassName);
         // Replace $record with a new instance
         $this->record = $this->record->newClassInstance($newClassName);
     }
     // Save form and any extra saved data into this dataobject
     $form->saveInto($this->record);
     $this->record->write();
     $extraData = $this->getExtraSavedData($this->record, $list);
     $list->add($this->record, $extraData);
     return $this->record;
 }
開發者ID:SpiritLevel,項目名稱:silverstripe-framework,代碼行數:28,代碼來源:GridFieldDetailForm_ItemRequest.php


注:本文中的SilverStripe\ORM\DataObject::newClassInstance方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。