2010-12-04 21 views
2

Je construis un module personnalisé et je dois pouvoir ajouter une image à mon type de données un peu comme nous pouvons ajouter des images aux produits. D'après ce que j'ai appris, une image est simplement un attribut.Magento: Ajouter des images (ou n'importe quel attribut) au module personnalisé

Comment ajouter un onglet à la page d'édition de mon module où la fonctionnalité de téléchargement d'images est fournie et où les images téléchargées sont automatiquement associées à mes entrées de type de données?

S'il vous plaît noter que je sais comment ajouter les onglets et même télécharger une image en PHP pur. Je voudrais juste réutiliser la fonctionnalité que les produits ont déjà et faire les choses de la manière de Magento.

Répondre

3

Si vous installez et utilisez l'extension Module Creator, cela vous donnera une fonctionnalité de téléchargement de fichier que vous pouvez utiliser pour les images. Vous pouvez ensuite changer le type de champ dans le adminhtml pour être "image" plutôt que "fichier" pour vous donner une vignette du fichier téléchargé dans l'onglet Modifier. par exemple. dans DOCROOT\app\code\local\Namespace\Modulename\Block\Adminhtml\News\Edit\Tab\Form.php

$fieldset->addField('image_filename', 'image', array(
     'label'  => Mage::helper('news')->__('Top Left Photo'), 
     'required' => false, 
     'name'  => 'image_filename', 
     'note'  => Mage::helper('news')->__('Image must be 400x235 dimensions'), 
)); 

Le contrôleur admin créé par le ModuleCreator traitera tout le code de téléchargement d'images pour vous.

Cheers, JD

+0

J'ai aussi essayé ce code pour créer l'attribut d'image. C'est bon quand je crée une nouvelle ligne. Mais quand je modifie, si je n'ai pas changé l'image, cela signifie que je n'ai éditer que quelques autres champs plutôt que des attributs d'image. Ce chemin d'image sera sauvegardé comme un tableau. Je ne peux pas obtenir l'image. Comment résoudre ce problème. Guidez-moi s'il-vous-plaît! – DRAJI