Errore di riferimento: Uploader non è definito in magento 1.9.3


8

dopo l'aggiornamento alla nuova versione 1.9.3 . l'Uploader non funziona più. dato sotto error.i aggiorno il mio codice ma sempre lo stesso.

uploader var = nuovo

Uploader ({ "uploaderConfig": { "chunksize": 1073741824, "withCrede ...

sotto è il mio codice

class Spacename_Modulename_Block_Adminhtml_Modulename_Edit_Tab_Images extends Mage_Adminhtml_Block_Widget {

    protected $_uploaderType = 'uploader/multiple';

    protected function _prepareForm() {
        $data = $this->getRequest()->getPost();
        $form = new Varien_Data_Form();
        $form->setValues($data);
        $this->setForm($form);

        return parent::_prepareForm();
    }

    protected function _prepareLayout() {
        $this->setChild('uploader', $this->getLayout()->createBlock($this->_uploaderType)
        );

        $this->getUploader()->getUploaderConfig()
                ->setFileParameterName('image')
                ->setTarget(Mage::getModel('adminhtml/url')->addSessionParam()->getUrl('*/*/image'));

        $browseConfig = $this->getUploader()->getButtonConfig();
        $browseConfig
                ->setAttributes(array(
                    'accept' => $browseConfig->getMimeTypesByExtensions('gif, png, jpeg, jpg')
        ));


        return parent::_prepareLayout();
    }

}

codice js

<script type="text/javascript">
//<![CDATA[
var <?php echo $_block->getJsObjectName(); ?> = new Product.Gallery('<?php echo $_block->getHtmlId() ?>', <?php echo $_block->getImageTypesJson() ?>);
//]]>
</script>

Risposte:


25

Dopo molte ricerche ho scoperto che magento 1.9.3.0 rimuove l'uploader flash quindi il file js deve eseguire l' uploader aggiungere questi file in testa

<reference name="head">
            <action method="addJs"><file>lib/uploader/flow.min.js</file></action>
            <action method="addJs"><file>lib/uploader/fusty-flow.js</file></action>
            <action method="addJs"><file>lib/uploader/fusty-flow-factory.js</file></action>
            <action method="addJs"><file>mage/adminhtml/uploader/instance.js</file></action>
</reference>

1
Come votare 5 volte?
— Arvind07,

@ Arvind07 trova 5 risposte e
— voti positivi

1
Ho trovato questa risposta 5 volte fino ad ora. Mi salva sempre :)
— Arvind07

@QaisarSatti Sono nuovo in Magento e sto lavorando per risolvere lo stesso problema, nella console mi sta mostrando l'errore MediabrowserInstance is not defined magento. Non so da dove posso aggiungere i file nella testa e inoltre non ho trovato questi file nella struttura delle cartelle. Potete per favore aiutarmi in questo
— Anshul Mishra,

@AnshulMishra controlla questa soluzione anche magento.stackexchange.com/questions/142006/…
— Qaisar Satti,

1

Ho risolto questo problema modificando le autorizzazioni del file.

Il problema era che i (nuovi) file Javascript sopra menzionati non potevano essere caricati. È stato generato un codice di errore 403.

Dopo aver impostato le autorizzazioni per i file nelle directory

js/image/adminhtml/uploader

e

js/lib/uploader,

il pulsante di caricamento funziona di nuovo correttamente!


Anche questa cartella: "js / mage / adminhtml / *"
— artur,

1

Dove dovremmo aggiungere:

<reference name="head">
            <action method="addJs"><file>lib/uploader/flow.min.js</file></action>
            <action method="addJs"><file>lib/uploader/fusty-flow.js</file></action>
            <action method="addJs"><file>lib/uploader/fusty-flow-factory.js</file></action>
            <action method="addJs"><file>mage/adminhtml/uploader/instance.js</file></action>
</reference>

Non sono sicuro di cosa intendi per capo


questo dovrebbe aggiungere l'area head della pagina di estensione corrente.
— Qaisar Satti,

Potete per favore dirmi dove aggiungere questo codice Sto usando un tema personalizzato nella versione Mag.3 1.9.3.8. Per favore dammi il percorso del file.
— Sanjay Gohil,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.