コード例 #1
0
 /**
  * Load an object using 'product_id' field if there's no field specified and value is not numeric
  *
  * @param AbstractModel|\Sebwite\ProductDownloads\Model\Download $object
  * @param mixed                                                  $value
  * @param string                                                 $field
  *
  * @return $this
  */
 public function load(AbstractModel $object, $value, $field = null)
 {
     if (!is_numeric($value) && is_null($field)) {
         $field = 'product_id';
     }
     return parent::load($object, $value, $field);
 }
コード例 #2
0
ファイル: Post.php プロジェクト: luxwan13/magento2-learning
 /**
  * Load an object using 'url_key' field if there's no field specified and value is not numeric
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @param mixed $value
  * @param string $field
  * @return $this
  */
 public function load(\Magento\Framework\Model\AbstractModel $object, $value, $field = null)
 {
     if (!is_numeric($value) && is_null($field)) {
         $field = 'url_key';
     }
     return parent::load($object, $value, $field);
 }
コード例 #3
0
ファイル: Type.php プロジェクト: pradeep-wagento/magento2
 /**
  * Load an object
  *
  * @param FormType|AbstractModel $object
  * @param mixed $value
  * @param string $field field to load by (defaults to model id)
  * @return $this
  */
 public function load(AbstractModel $object, $value, $field = null)
 {
     if ($field === null && !is_numeric($value)) {
         $field = 'code';
     }
     return parent::load($object, $value, $field);
 }
コード例 #4
0
ファイル: Query.php プロジェクト: kidaa30/magento2-platformsh
 /**
  * Loading string as a value or regular numeric
  *
  * @param AbstractModel $object
  * @param int|string $value
  * @param null|string $field
  * @return $this|\Magento\Framework\Model\ResourceModel\Db\AbstractDb
  * @SuppressWarnings("unused")
  */
 public function load(AbstractModel $object, $value, $field = null)
 {
     if (is_numeric($value)) {
         return parent::load($object, $value);
     } else {
         $this->loadByQuery($object, $value);
     }
     return $this;
 }
コード例 #5
0
 public function testLoad()
 {
     $contextMock = $this->getMock('\\Magento\\Framework\\Model\\Context', [], [], '', false);
     $registryMock = $this->getMock('\\Magento\\Framework\\Registry', [], [], '', false);
     $abstractModelMock = $this->getMockForAbstractClass('\\Magento\\Framework\\Model\\AbstractModel', [$contextMock, $registryMock], '', false, true, true, ['__wakeup']);
     $value = 'some_value';
     $idFieldName = new \ReflectionProperty('Magento\\Framework\\Model\\ResourceModel\\Db\\AbstractDb', '_idFieldName');
     $idFieldName->setAccessible(true);
     $idFieldName->setValue($this->_model, 'field_value');
     $this->assertInstanceOf('Magento\\Framework\\Model\\ResourceModel\\Db\\AbstractDb', $this->_model->load($abstractModelMock, $value, $idFieldName));
 }
コード例 #6
0
 /**
  * Load
  *
  * @param \Magento\Framework\Model\AbstractModel $object
  * @param String $value
  * @param String $field
  * @return array|$this
  */
 public function load(\Magento\Framework\Model\AbstractModel $object, $value, $field = null)
 {
     if (is_string($value)) {
         $select = $this->getConnection()->select()->from($this->getMainTable())->where($this->getMainTable() . '.string=:tr_string');
         $result = $this->getConnection()->fetchRow($select, ['tr_string' => $value]);
         $object->setData($result);
         $this->_afterLoad($object);
         return $result;
     } else {
         return parent::load($object, $value, $field);
     }
 }
コード例 #7
0
 /**
  * @param \Magento\Framework\Model\AbstractModel $object
  * @param mixed                                  $value
  * @param null                                   $field
  *
  * @return $this
  */
 public function load(\Magento\Framework\Model\AbstractModel $object, $value, $field = null)
 {
     return parent::load($object, $value, $field);
 }