QuestionTable::getEntity()
Класс: \Bitrix\Vote\QuestionTable
Сигнатура
public static getEntity() : EO_Question_Entity
Возвращаемое значение
EO_Question_Entity
Как применяется в QuestionTable
QuestionTable::getEntity() — метод класса \Bitrix\Vote\QuestionTable модуля «Опросы». QuestionTable: Класс VoteTable
Поля:
ID int обязательное
ACTIVE bool обязательное по умолчанию 'Y',
TIMESTAMP_X datetime,
VOTE_ID int,
C_SORT int,
COUNTER int,
QUESTION text,
QUESTION_TYPE string(4),
IMAGE_ID int,
DIAGRAM bool обязательное по умолчанию 'Y',
DIAGRAM_TYPE string(10) обязательное по умолчанию 'histogram' || 'circle',
REQUIRED bool обязательное по умолчанию 'N',. Это ORM-сущность D7 (наследник DataManager): строки читаются как объекты EO_Question, наборы — как EO_Question_Collection. Метод достаётся QuestionTable от DataManager::getEntity: поведение общее для всех сущностей, а данные, поля и классы — свои.
Возвращает объект сущности QuestionTable — описание полей, первичного ключа, связей и модуля. Через него проверяют, есть ли поле, и строят запросы динамически.
use Bitrix\Main\Loader;
use Bitrix\Vote\QuestionTable;
Loader::includeModule('vote');
$entity = QuestionTable::getEntity();
$primary = $entity->getPrimaryArray();
$hasName = $entity->hasField('NAME');Собственные методы QuestionTable
getEntity() есть и у других классов модуля «Опросы»: AnswerTable, AttachTable, ChannelSiteTable, EventAnswerTable, UserTable, VoteTable.
Исходный файл: source/vote/lib/question.php

