Closed vkryukov76 closed 7 years ago
Привет, можешь показать пример твоего кода где проявляется ошибка?
Что-то вроде этого:
CModule::IncludeModule('iblock');
use Arrilot\BitrixModels\Models\SectionModel;
use Arrilot\BitrixModels\Models\ElementModel;
class SuperSection extends SectionModel
{
/**
* Corresponding iblock id.
*
* @return int
*/
const IBLOCK_ID = 42;
}
class SuperElement extends ElementModel
{
/**
* Corresponding iblock id.
*
* @return int
*/
const IBLOCK_ID = 42;
}
$elements = SuperElement::query()->select('ID', 'NAME')->getList();
$sections = SuperSection::query()->select('ID', 'NAME')->getList();
/*
$sections = SuperSection::query()->select('ID', 'NAME')->getList();
$elements = SuperElement::query()->select('ID', 'NAME')->getList();
*/
var_dump($elements->toArray());
var_dump($sections->toArray());
Спасибо, поправлено в 0.5.1 Что-то многовато магии в пхпшных статических свойствах.
Случайно обнаружил такой баг:
Если в коде используются модели Элемента и Секции, то в свойство модели
bxObject
записывается класс первой вызванной модели.Добавил дополнительную проверку в код
https://github.com/arrilot/bitrix-models/blob/ad79f2ae069b538103cc6a1ecabfa775671a66a7/src/Models/BitrixModel.php#L361-L363
Но не уверен в правильности решения