cancel
Showing results for 
Search instead for 
Did you mean: 

('sales/order_config')->getStatuses() in magento 2

SOLVED

('sales/order_config')->getStatuses() in magento 2

Salve, come posso convertire il codice :

    public static function toOptionArray()
    {
        $statuses = Mage::getSingleton('sales/order_config')->getStatuses();
        foreach ($statuses as $k=>$v) {
            $return[] = array('value'=>$k,'label'=>$v);
        }
        
        return $return;
    }

 

in magento 2?

provavo con :

    public function toOptionArray()
    {
        //$statuses = Mage::getSingleton('sales/order_config')->getStatuses();
        $objectManager = \Magento\Framework\App\ObjectManager::getInstance();
        $statuses = $objectManager->create('\Magento\Sales\Model\Order')->getStatuses();
        foreach ($statuses as $k=>$v) {
            $return[] = array('value'=>$k,'label'=>$v);
        }
        
        return $return;
    }

Sono sicuro che sto sbagliando platealmente al 100%, ma in giro non ho trovato niente in merito.
Scusate se la domanda può sembrare stupida, sono nuovo in magento e non mi è ancora chiare la struttura del fw.
Grazie in anticipo.

3 REPLIES

Re: ('sales/order_config')->getStatuses() in magento 2

Non credo si possa "convertire" una funzione così semplicemente senza verificare il contesto...

Ti consiglio di studiare sulla doc ufficiale le basi di M2 per capire meglio come procedere.

------------------ [ Antonio Carboni ] ------------------Hosting Magenio
Problema risolto? Clicca Accept as Solution!

Re: ('sales/order_config')->getStatuses() in magento 2

Cioè? si ho gia letto la documentazione di magento per php developer, a dire la verità ho letto quasi tutta la docuementazione
(che a mio avviso è ancora un po povera)...

ora tralasciando il sigleton...mi serve grabbare gli status degli ordini


forse non sono stato molto chiaro nella richiesta prima, qualcuno sa come prendere gli status degli ordini per restituirli con la funzione toOptioArray al mio system.xml???

Re: ('sales/order_config')->getStatuses() in magento 2

    public function __construct(\Magento\Sales\Model\Order\Config $orderConfig) 
    {
         $this->_orderConfig = $orderConfig;
    }

    public function toOptionArray()
    {

         $statuses = $this->_orderConfig->getStatuses();

        
        $order_array = array();
        foreach($statuses as $k=>$label) {
            $order_array[] = array('value'=>$k,'label'=>$label);
                }

        return $order_array;
    }

Ciao, ho risolto da solo spulciando nei Model di Magento 2, questa è la soluzione che cercavo...