Класс DataSource
Базовый класс DataSource
DataSource — это звено связи между моделями и источником данных, которые модели представляют.
- Объект
-
DataSource
Непосредственные известные подклассы
DboSourceКосвенные известные подклассы
Mysql, Postgres, Sqlite, SqlserverАвторские права: Авторские права (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: Лицензия MIT
Ссылка: http://book.cakephp.org/2.0/ru/models/datasources.html#basic-api-for-datasources
Расположение: Cake/Model/Datasource/DataSource.php
Подробное описание методов
__constructsource public
__construct( array $config array() )
Конструктор.
Параметры
- массив
$configнеобязательно array() - Массив с конфигурационной информацией для источника данных.
Переопределяет
Object::__construct() _cacheDescriptionsource protected
_cacheDescription( string $object , mixed $data null )
Кэширование описания DataSource
Параметры
- строка
$object - Имя объекта (модели) для кэширования
- смешанный
$dataнеобязательно null - Описание модели, обычно строка или массив
Возвращает
mixedсмешанный
beginsource public
begin( )
Начало транзакции
Возвращает
booleanВозвращает true, если транзакция не запущена
closesource public
close( )
Закрывает соединение. Переопределить в подклассах.
Возвращает
booleanbool
columnsource public
column( string $real )
Преобразует типы столбцов в базовые типы
Параметры
- строка
$real - Реальный тип столбца (например, "varchar(255)")
Возвращает
stringАбстрактный тип столбца (например, "строка")
commitsource public
commit( )
Подтвердить транзакцию
Возвращает
booleanВозвращает true, если транзакция запущена
createsource public
create( Model $Model , array $fields null , array $values null )
Используется для создания новых записей. "C" CRUD.
Должно переопределяться в подклассах.
Параметры
-
Model$Model - Модель, которую нужно создать.
- массив
$fieldsнеобязательно null - Массив полей для сохранения.
- массив
$valuesнеобязательно null - Массив значений для сохранения.
Возвращает
booleanУспех
deletesource public
delete( Model $Model , mixed $conditions null )
Удаление записи(ей) в источнике данных.
Должно переопределяться в подклассах.
Параметры
-
Model$Model - Класс модели, из которого удаляются записи.
- смешанный
$conditionsнеобязательно null - Условия для удаления.
Возвращает
booleanУспешно
describesource public
describe( Model|string $model )
Возвращает описание модели (метаданные) или null, если не найдено.
Параметры
-
Model|строка$model - Модель для описания.
Возвращает
array|nullМассив метаданных для $model
enabledsource public
enabled( )
Проверка соответствия условий для доступности источника данных. Часто используется из connect() для проверки поддержки перед установлением соединения.
Возвращает
booleanСоответствие или несоответствие условиям использования источника данных.
getSchemaNamesource public
getSchemaName( )
Возвращает имя схемы. Переопределить в подклассах.
Возвращает
string|nullИмя схемы
insertQueryDatasource public
insertQueryData( string $query , array $data , string $association , Model $Model , array $stack )
Заменяет {$__cakeID__$} и {$__cakeForeignKey__$} плейсхолдеры в данных запроса.
Параметры
- строка
$query - Строка запроса, требующая замены.
- массив
$data - Массив данных со значениями, которые будут вставлены в плейсхолдеры.
- строка
$association - Имя модели ассоциации, которая заменяется.
-
Model$Model - Экземпляр модели.
- массив
$stack - Стек контекста.
Возвращает
mixedСтрока данных запроса с замененными плейсхолдерами или false при ошибке.
lastAffectedsource public
lastAffected( mixed $source null )
Возвращает количество строк, затронутых последним запросом.
Параметры
- смешанный
$sourceнеобязательно null - Имя источника.
Возвращает
integerКоличество строк, затронутых последним запросом.
lastInsertIdsource public
lastInsertId( mixed $source null )
Возвращает ID, сгенерированный в результате предыдущей операции INSERT.
Параметры
- смешанный
$sourceнеобязательно null - Имя источника.
Возвращает
mixedПоследний сгенерированный ключ ID в предыдущей операции INSERT
lastNumRowssource public
lastNumRows( mixed $source null )
Возвращает количество строк, возвращенных последней операцией.
Параметры
- смешанный
$sourceнеобязательно null - Имя источника.
Возвращает
integerКоличество строк, возвращенных последней операцией
listSourcessource public
listSources( mixed $data null )
Кэширует/возвращает кэшированные результаты для дочерних экземпляров.
Параметры
- смешанный
$dataнеобязательно null - Не используется в этом классе.
Возвращает
array|nullМассив доступных источников в этом источнике данных.
readsource public
read( Model $Model , array $queryData array() , integer $recursive null )
Используется для чтения записей из источника данных. «Чтение» в CRUD
Подлежит переопределению в дочерних классах.
Параметры
-
Model$Model - Модель, которую нужно прочитать.
- массив
$queryDataнеобязательно array() - Массив данных запроса, используемый для поиска нужных данных
- целое число
$recursiveнеобязательно null - Количество уровней ассоциации
Возвращает
mixedсмешанный тип
resolveKeysource public
resolveKey( Model $Model , string $key )
Подлежит переопределению в дочерних классах.
Параметры
-
Model$Model - Экземпляр модели
- строка
$key - Имя ключа для создания
Возвращает
stringИмя ключа модели.
rollbacksource public
rollback( )
Откатить транзакцию
Возвращает
booleanВозвращает true, если транзакция активна
setConfigsource public
setConfig( array $config array() )
Устанавливает конфигурацию для источника данных. Объединяет информацию $config с _baseConfig и существующим свойством $config.
Параметры
- массив
$configнеобязательно array() - Массив конфигурации
updatesource public
update( Model $Model , array $fields null , array $values null , mixed $conditions null )
Обновить запись(и) в источнике данных.
Подлежит переопределению в дочерних классах.
Параметры
-
Model$Model - Экземпляр класса модели, который нужно обновить
- массив
$fieldsнеобязательно null - Массив полей для обновления
- массив
$valuesнеобязательно null - Массив значений для обновления полей $fields.
- смешанный тип
$conditionsнеобязательно null - Массив условий для использования.
Возвращает
booleanУспешно
Наследуемые методы от Object
_mergeVarssource protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства объекта $property со свойствами в определении $class. Значение свойства этого класса будет объединено поверх $class'
Это обеспечивает некоторую DRY-магию, предоставляемую CakePHP. Если вы хотите ее отключить, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Название свойств для объединения.
- строка
$class - Класс для объединения свойства с ним.
- логическое значение
$normalizeнеобязательно true - Установите значение true, чтобы выполнить свойства через Hash::normalize() перед объединением.
_setsource protected
_set( array $properties array() )
Позволяет установить несколько свойств объекта в одной строке кода. Будет устанавливать только свойства, которые являются частью объявления класса.
Параметры
- массив
$propertiesнеобязательно array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stopsource protected
_stop( integer|string $status 0 )
Остановить выполнение текущего скрипта. Оборачивает exit(), что облегчает тестирование.
Параметры
- целое число|строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
dispatchMethodsource public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с заданными параметрами. Предоставляет ОО-обертку для call_user_func_array
Параметры
- строка
$method - Имя вызываемого метода
- массив
$paramsнеобязательно array() - Список параметров для использования при вызове $method
Возвращает
mixedВозвращает результат вызова метода
logsource public
log( string $msg , integer $type LOG_ERR , null|string|array $scope null )
Удобный метод для записи сообщения в CakeLog. См. CakeLog::write() для получения дополнительной информации о записи в журналы.
Параметры
- строка
$msg - Сообщение журнала
- целое число
$typeнеобязательно LOG_ERR - Константа типа ошибки. Определена в app/Config/core.php.
- null|строка|массив
$scopeнеобязательно null - Сфера(ы), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о разделах журнала.
Возвращает
booleanРезультат записи в журнал
requestActionsource public
requestAction( string|array $url , array $extra array() )
Вызывает метод контроллера из любой точки. Может использоваться для соединения контроллеров или связывания плагинов с основным приложением. requestAction может использоваться для возврата отрисованных представлений или извлечения возвращаемого значения действий контроллера.
Внутри этот метод использует Router::reverse() для преобразования параметра $url в строку URL. Вы должны использовать форматы URL, совместимые с Router::reverse()
Передача данных POST и GET
Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет моделировать данные POST.
Параметры
- строка|массив
$url - Строка или массив-URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать передаваемые и именованные аргументы в параметре $url.
- массив
$extraнеобязательно array() - Если массив содержит ключ "return", он устанавливает AutoRender в true. Также может использоваться для отправки данных GET/POST и именованных/передаваемых аргументов.
Возвращает
mixedБулево значение true или false об успехе/неуспехе или содержимое отрисованного действия, если в $extra задан ключ 'return'.
toStringsource public
toString( )
Преобразование объекта в строку. Каждый класс может переопределить этот метод по мере необходимости.
Возвращает
stringИмя этого класса
Краткое описание свойств
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/2.7/class-DataSource.html