Je suis nouveau sur Magento et je souhaite définir la vue du magasin après la connexion en fonction de l'utilisateur. L'utilisateur peut sélectionner une vue de magasin lors de l'enregistrement et celle-ci est stockée en tant qu'attribut EAV dans la base de données.
Mon script d'installation:
<?php
$installer = $this;
$installer->startSetup();
$setup = Mage::getModel('customer/entity_setup', 'core_setup');
$setup->addAttribute('customer', 'default_store_view_code', array(
'type' => 'varchar',
'input' => 'select',
'label' => 'Default Store View',
'global' => 1,
'visible' => 1,
'required' => 1,
'user_defined' => 1,
'default' => '',
'visible_on_front' => 1,
'source' => 'ModuleName/source_storeViewCode'
));
Mage::getSingleton('eav/config')
->getAttribute('customer', 'default_store_view_code')
->setData('used_in_forms', array('adminhtml_customer','customer_account_create','customer_account_edit','checkout_register'))
->save();
$installer->endSetup();
?>
usage_in_forms n'est pas configuré pour le moment. Mon problème: lorsque j'essaie de montrer les détails de mon client dans le backend Magento, j'obtiens l'erreur:
AVERTISSEMENT: include (mage / modulename / modèle / source / storeViewCode.php): Échec de l'ouverture du flux: aucun fichier ou répertoire de ce type
'source' => 'NameSpace/ModuleName/source_storeViewCode'
et
'source' => 'NameSpace_ModuleName/source_storeViewCode'
n'a pas fonctionné non plus. Il essaie de se charger de l'espace de noms Mage. Comment puis-je le régler sur mon espace de noms?
Mon source_model est situé dans local / namespace / modulename / modèle / source / storeviewcode.php.
PS: mon config.xml de mon module
<?xml version="1.0"?>
<config>
<modules>
<NameSpace_ModuleName>
<version>1.0.0</version>
</NameSpace_ModuleName>
</modules>
<global>
<blocks>
<customer>
<rewrite>
<form_register>NameSpace_ModuleName_Block_Form_Register</form_register>
</rewrite>
</customer>
</blocks>
<resources>
<ModuleName_setup>
<setup>
<module>NameSpace_ModuleName</module>
<class>NameSpace_ModuleName_Model_Resource_Setup</class>
</setup>
</ModuleName_setup>
</resources>
</global>
<frontend>
<routers>
<customer>
<args>
<modules>
<moduleName before="Mage_Customer">NameSpace_ModuleName</moduleName>
</modules>
</args>
</customer>
</routers>
</frontend>
</config>