Баг с through?

Предварительное обсуждение найденных ошибок перед отправкой их авторам фреймворка, а также внесение новых предложений.
Ответить
aleksp
Сообщения: 12
Зарегистрирован: 2011.07.26, 12:38

Баг с through?

Сообщение aleksp » 2015.07.16, 19:23

Код: Выделить всё

            'itemsOnlyProducts' => array(self::HAS_MANY, 'WarehousesItems', 'warehouse_id', 'with' => array(
                'product' => array(
                    'condition' => 'product.is_service = 0',
                    'joinType' => 'INNER JOIN'
                )
            )),
            'categoriesOnlyProducts' => array(self::HAS_MANY, 'Categories', array('category_id' => 'id'), 'through' => 'itemsOnlyProducts'),
При обращении к categoriesOnlyProducts не учитывается with у itemsOnlyProducts. Хотя логика подсказывает, что with просто обязан быть учтён.

aleksp
Сообщения: 12
Зарегистрирован: 2011.07.26, 12:38

Re: Баг с through?

Сообщение aleksp » 2015.07.16, 20:38

Обнаружил, что если указать связь, идущую по цепочке дальше, принудительно, то тогда её условия учитываются.

Код: Выделить всё

            'itemsOnlyProducts' => array(self::HAS_MANY, 'WarehousesItems', 'warehouse_id', 'with' => array(
                'product' => array(
                    'condition' => 'product.is_service = 0',
                    'joinType' => 'INNER JOIN'
                )
            )),
            'categoriesOnlyProducts' => array(self::HAS_MANY, 'Categories', array('category_id' => 'id'), 'through' => 'itemsOnlyProducts.product'),

Однако, на мой взгляд это не меняет мое мнение, что есть небольшой баг. Ведь связь itemsOnlyProducts уже содержит в своем условии with, поэтому любой её вызов должен включать и её with.

Ответить