Ich verfolge viele Artikel, aber ich kann kein Mehrfachauswahlattribut erstellen. und ich bekomme folgenden Fehler.
a: 5: {i: 0; s: 50: "Quellmodell" "nicht gefunden für Attribut" exinent1 ""; i: 1; s: 3008: "# 0 C: \ wamp \ www \ magento8 \ app \ code \Ader.
und mein Skript ist:
<?php
$installer = $this;
$installer->startSetup();
$setup = new Mage_Eav_Model_Entity_Setup('core_setup');
$entityTypeId = $setup->getEntityTypeId('customer');
$attributeSetId = $setup->getDefaultAttributeSetId($entityTypeId);
$attributeGroupId = $setup->getDefaultAttributeGroupId($entityTypeId, $attributeSetId);
$setup->addAttribute('customer', 'exinent1', array(
'input' => 'multiselect',
'type' => 'varchar',
'backend' => 'eav/entity_attribute_backend_array',
'label' => 'exinent1',
'visible' => 1,
'required' => 0,
'user_defined' => 1,
'option' => array (
'value' => array('optionone' => array('First Option'),
'optiontwo' => array('Second Option'),
'optionthree' => array('Third Option'),
)
),
));
$setup->addAttributeToGroup(
$entityTypeId,
$attributeSetId,
$attributeGroupId,
'exinent1',
'100'
);
$oAttribute = Mage::getSingleton('eav/config')->getAttribute('customer', 'exinent1');
$oAttribute->setData('used_in_forms', array('adminhtml_customer'));
$oAttribute->save();
$setup->endSetup();
und config.xml ist:
<?xml version="1.0"?>
<config>
<modules>
<Exinent_Cusatt>
<version>3.1.5.6</version>
</Exinent_Cusatt>
</modules>
<global>
<resources>
<exinent_cusatt_setup>
<setup>
<module>Exinent_Cusatt</module>
</setup>
</exinent_cusatt_setup>
</resources>
</global>
</config>
sql
multiselect-attribute
customer-attribute
Sivakumar
quelle
quelle
Antworten:
Ich denke, du hast viele Fehler gemacht.
etc / config.xml
Helper / Data.php:
Modus / Eav / Entität / Attribut / Quelle / Kundenoptionen14042122330.php
sql / customerattribute1404212233_setup / mysql4-install-0.1.0.php
Das ist es. Aktivieren Sie einfach Ihr Modul, deklarieren Sie Ihren Codepool und verwechseln Sie es nicht mit den Zahlen.
<customerattribute1404212233_setup>
Es ist nur ein zufälliges Nein für Ihre Attributidentität, um doppelte Eingaben zu verhindern. ..Prost ..!quelle
Hallo Elavarasan und Sivakumar,
Es ist keine gute Idee, Optionscode statisch aufzurufen. Sie müssen nur die Eav-Tabelle abrufen
Surcemodel getAllOptions () sollte sein
quelle