/** * 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); }
/** * 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); }
/** * 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); }
/** * 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; }
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)); }
/** * 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); } }
/** * @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); }