Frage

Ich verwende den folgenden Code, um meinem "Dropdown -Attribut" eine Option hinzuzufügen:

public function createAttributeOption($option){
    $arg_attribute = 'attribute_code';
    $arg_value = $option;

    $attr_model = Mage::getModel('catalog/resource_eav_attribute');
    $attr = $attr_model->loadByCode('catalog_product', $arg_attribute);
    $attr_id = $attr->getAttributeId();

    $option['attribute_id'] = $attr_id;
    $option['value']['any_option_name'][0] = $arg_value;

    $setup = new Mage_Eav_Model_Entity_Setup('core_setup');
    $setup->addAttributeOption($option);
    return '???';
}

Und das fügt die Option perfekt in mein Attribut ein. Die Frage ist, dass ich die ID der eingefügten Option aus dieser Funktion zurückgeben muss. Wie kann ich die ID dieser letzten eingefügten Option erhalten?

War es hilfreich?

Lösung

Versuche dies:

$lastId = $setup->getConnection()->lastInsertId();
$attr = Mage::getModel('eav/entity_attribute_option')
            ->getCollection()
            ->setStoreFilter()
            ->addFieldToFilter('tsv.value_id',array('eq'=>$lastId))
            ->getFirstItem();

$optionId = $attr->getData('option_id');
return $optionId;

Andere Tipps

echo $order->getId();
echo $lastInsertId  = $db_write ->fetchOne('SELECT last_insert_id()');
echo $db_write ->lastInsertId(); // you may also try this.

Sie können alle Informationen zur letzten Einfügungs -ID erhaltenKlicken Sie hier

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top