Magento 2: проверка addFieldToFilter на NULL не работает

10

Я пытаюсь получить записи из базы данных, которая содержит значение parent_item_id NULL .

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

а также хотите добавить проверку на parent_item_idравенство NULL или '' string.

Нитин Павар
источник

Ответы:

24

Попробуй, array('null' => true)

 $order_ = $this->_objectManager->create('Vendor\Module\Model\Saleslist')
                        ->getCollection()
                ->addFieldToFilter(
                    'order_id',
                    $orderId
                )->addFieldToFilter(
                    'parent_item_id',
                    array('null' => true)
                );
Ракеш Джесадия
источник
еще один вопрос, который я хочу добавить или сформулировать дляparent_item_id
Нитин Павар
проверьте эту ссылку, stackoverflow.com/questions/7320690/…
Ракеш Джезадия
Ты работаешь на себя?
Ракеш Джесадия
Это работает.
Спасибо
0

До Magento 2.3 существовала ошибка, которая не позволяла фильтровать коллекцию по значению атрибута «null». https://github.com/magento/magento2/issues/14355

В моем случае обновление до Magento 2.3 решило проблему.

Антуан Мартин
источник