本文整理汇总了PHP中Mage_Eav_Model_Entity_Attribute::getBackendType方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Eav_Model_Entity_Attribute::getBackendType方法的具体用法?PHP Mage_Eav_Model_Entity_Attribute::getBackendType怎么用?PHP Mage_Eav_Model_Entity_Attribute::getBackendType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Eav_Model_Entity_Attribute
的用法示例。
在下文中一共展示了Mage_Eav_Model_Entity_Attribute::getBackendType方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getAttributeFilterType
/**
* Determine filter type for specified attribute.
*
* @static
* @param Mage_Eav_Model_Entity_Attribute $attribute
* @throws Exception
* @return string
*/
public static function getAttributeFilterType(Mage_Eav_Model_Entity_Attribute $attribute)
{
if ($attribute->usesSource() || $attribute->getFilterOptions()) {
return self::FILTER_TYPE_SELECT;
} elseif ('datetime' == $attribute->getBackendType()) {
return self::FILTER_TYPE_DATE;
} elseif ('decimal' == $attribute->getBackendType() || 'int' == $attribute->getBackendType()) {
return self::FILTER_TYPE_NUMBER;
} elseif ($attribute->isStatic() || 'varchar' == $attribute->getBackendType() || 'text' == $attribute->getBackendType()) {
return self::FILTER_TYPE_INPUT;
} else {
Mage::throwException(Mage::helper('importexport')->__('Can not determine attribute filter type'));
}
}
示例2: getAttributeType
/**
* Get attribute type for upcoming validation.
*
* @param Mage_Eav_Model_Entity_Attribute $attribute
* @return string
*/
public static function getAttributeType(Mage_Eav_Model_Entity_Attribute $attribute)
{
if ($attribute->usesSource()) {
return $attribute->getFrontendInput() == 'multiselect' ? 'multiselect' : 'select';
} elseif ($attribute->isStatic()) {
return $attribute->getFrontendInput() == 'date' ? 'datetime' : 'varchar';
} else {
return $attribute->getBackendType();
}
}
示例3: _migrateData
/**
* Migrate Entries from source to target tables (if possible)
*
* TODO: Delete existing Select/Multiselect Values if the new Backend Type is not one of Select/Multiselect
*
* @param Mage_Eav_Model_Entity_Attribute $attribute Attribute Model
* @param string $targetType Target Backend Type
* @return void
*/
protected function _migrateData($attribute, $targetType)
{
/** @var Varien_Db_Adapter_Interface $_dbConnection */
$_dbConnection = Mage::getSingleton('core/resource')->getConnection('core_write');
// e.g. Entity is 'catalog_product'
$entityTypeCode = $attribute->getEntity()->getData('entity_type_code');
// Set Backend Types for later reference
$sourceType = $attribute->getBackendType();
// Create complete Entity Table names, e.g. 'catalog_product_entity_text'
$sourceTable = implode([$entityTypeCode, 'entity', $sourceType], '_');
$targetTable = implode([$entityTypeCode, 'entity', $targetType], '_');
// Select all existing entries for given Attribute
$srcSql = 'SELECT' . ' * FROM ' . $sourceTable . ' WHERE attribute_id = ? AND entity_type_id = ?';
/** @var Zend_Db_Statement_Interface $sourceQuery */
$sourceQuery = $_dbConnection->query($srcSql, [$attribute->getId(), $attribute->getEntity()->getData('entity_type_id')]);
$this->_migrateNonSelect($targetType, $sourceQuery, $sourceType, $targetTable, $_dbConnection, $sourceTable);
}