HandlerTable::setDefaultScope()
Сигнатура
public static setDefaultScope(Query $query) : Query
Параметры
$query
Query
Возвращаемое значение
Query
Как применяется в HandlerTable
HandlerTable::setDefaultScope() — метод класса \Bitrix\Main\Service\GeoIp\HandlerTable модуля «Главный модуль». Это ORM-сущность D7 (наследник DataManager): строки читаются как объекты EO_Handler, наборы — как EO_Handler_Collection. Метод достаётся HandlerTable от DataManager::setDefaultScope: поведение общее для всех сущностей, а данные, поля и классы — свои.
Добавляет условия по умолчанию в каждый запрос к HandlerTable, созданный через query() или getList(). Переопределяют в наследнике, если, например, всегда нужно скрывать неактивные записи.
use Bitrix\Main\ORM\Query\Query;
class MyHandlerTable extends \Bitrix\Main\Service\GeoIp\HandlerTable
{
public static function setDefaultScope(Query $query): Query
{
return $query->where('ID', '>', 0);
}
}Собственные методы HandlerTable
validateClassName()Возвращает валидаторы для поля CLASS_NAME.
setDefaultScope() есть и у других классов модуля «Главный модуль»: AccessPermissionTable, AccessRoleRelationTable, AccessRoleTable, ApplicationPasswordTable, CacheCleanPathTable, CacheTagTable, CultureTable, DataManager.
Исходный файл: source/main/lib/service/geoip/handler.php:304

