Magento 2: AddFieldToFilter-Prüfung auf NULL funktioniert nicht

10

Ich versuche, die Datensätze aus der Datenbank parent_item_id abzurufen, die den Wert NULL enthält .

$order_ = $this->_objectManager->create('Vendor\Module\Model\Saleslist')
                    ->getCollection()
            ->addFieldToFilter(
                'order_id',
                $orderId
            )->addFieldToFilter(
                'parent_item_id',
                ['eq' => NULL]
            );

und möchten auch die parent_item_idgleiche NULL- oder '' String-Prüfung hinzufügen .

Nitin Pawar
quelle

Antworten:

23

Versuche es mit, array('null' => true)

 $order_ = $this->_objectManager->create('Vendor\Module\Model\Saleslist')
                        ->getCollection()
                ->addFieldToFilter(
                    'order_id',
                    $orderId
                )->addFieldToFilter(
                    'parent_item_id',
                    array('null' => true)
                );
Rakesh Jesadiya
quelle
eine weitere Frage, die ich hinzufügen oder Klausel für dieparent_item_id
Nitin Pawar
Überprüfen Sie diesen Link, stackoverflow.com/questions/7320690/…
Rakesh Jesadiya
Hast du für dich gearbeitet
Rakesh Jesadiya
Dies
funktioniert. Danke
0

Bis Magento 2.3 gab es einen Fehler, der das Filtern einer Sammlung nach dem Attributwert "null" verhinderte. https://github.com/magento/magento2/issues/14355

In meinem Fall wurde das Problem durch ein Update auf Magento 2.3 behoben.

Antoine Martin
quelle