Spec-Zone.ru › CakePHP 2.7

Класс TranslateBehavior

Поведение перевода

Объект
Extended by ModelBehavior
Extended by TranslateBehavior
Пакет: Cake\Модель\Поведение
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/behaviors/translate.html
Расположено в Cake/Model/Behavior/TranslateBehavior.php

Подробное описание метода

_addJoinисходный код защищенный

_addJoin( Model $Model , array $query , string $field , string $aliasField , string|array $locale )

Добавляет объединение для переведенных полей.

Параметры

Model $Model
Модель, над которой ведется работа.
массив $query
Массив запроса, к которому необходимо добавить объединение.
строка $field
Имя поля, к которому добавляется объединение.
строка $aliasField
Имя алиасированного поля, к которому добавляется объединение.
строка|массив $locale
Локали, для которых добавляются объединения.

Возвращает

array
Измененный запрос

_checkConditionsисходный код защищенный

_checkConditions( Model $Model , array $query )

Проверяет условия запроса на наличие переведенных полей. Возвращает массив найденных переведенных полей в условиях.

Параметры

Model $Model
Модель, которая читается.
массив $query
Массив запроса.

Возвращает

array
Список переведенных полей, присутствующих в условиях.

_getLocaleисходный код защищенный

_getLocale( Model $Model )

Получение выбранной локали для модели

Параметры

Model $Model
Модель, для которой необходимо установить/получить локаль.

Возвращает

mixed
строка или ложь

_prepareTranslationsисходный код защищенный

_prepareTranslations( Model $Model , array $data )

Подготавливает данные для сохранения для переведенных записей. Добавляет пустые поля и заполняет данные для сохранения по нескольким локалям.

Параметры

Model $Model
Модель, использующая данное поведение
массив $data
Разреженный массив, который был предоставлен.

Возвращает

array
Полностью заполненные данные для сохранения.

_removeFieldисходный код защищенный

_removeField( Model $Model , string $field )

Обновляет настройки времени выполнения для данного поля.

Параметры

Model $Model
Модель, использующая это поведение
строка $field
Поле для обновления.

_setRuntimeDataисходный код защищенный

_setRuntimeData( Model $Model )

Устанавливает данные времени выполнения.

Используется из beforeValidate() и beforeSave() для решения проблем совместимости и для сохранения переводов даже при отключенной валидации.

Параметры

Model $Model
Модель, использующая это поведение.

afterDeleteисходный код общедоступный

afterDelete( Model $Model )

Обработчик afterDelete

Параметры

Model $Model
Модель, на которой был вызван обработчик.

Переопределяет

ModelBehavior::afterDelete()

afterFindисходный код общедоступный

afterFind( Model $Model , array $results , boolean $primary false )

Обработчик afterFind

Параметры

Model $Model
Модель, на которой выполнялся поиск
массив $results
Массив результатов модели.
логическое значение $primary необязательно false
Произошел ли поиск на основе $model.

Возвращает

array
Измененные результаты

Переопределяет

ModelBehavior::afterFind()

afterSaveисходный код общедоступный

afterSave( Model $Model , boolean $created , array $options array() )

Обработчик afterSave

Параметры

Model $Model
Модель, на которой вызывается обработчик
логическое значение $created
Создана ли запись в результате сохранения.
массив $options необязательно массив()
Опции, переданные из Model::save().

Переопределяет

ModelBehavior::afterSave()

afterValidateисходный код общедоступный

afterValidate( Model $Model )

Восстанавливает данные модели до исходных данных. Это решает проблемы с saveAssociated и validate = first.

Параметры

Model $Model
Модель, использующая это поведение.

Переопределяет

ModelBehavior::afterValidate()

beforeFindисходный код общедоступный

beforeFind( Model $Model , array $query )

Обработчик beforeFind

Параметры

Model $Model
Модель, на которой выполняется поиск.
массив $query
Массив параметров запроса.

Возвращает

array
Измененный запрос

Переопределяет

ModelBehavior::beforeFind()

beforeSaveисходный код общедоступный

beforeSave( Model $Model , array $options array() )

Обработчик beforeSave.

Копирует данные в свойство времени выполнения, когда $options['validate'] отключено. Или данные времени выполнения еще не установлены.

Параметры

Model $Model
Модель, на которой вызывалось сохранение.
массив $options необязательно массив()
Опции, переданные из Model::save().

Возвращает

boolean
истина.

См. также

Model::save()

Переопределяет

ModelBehavior::beforeSave()

beforeValidateисходный код общедоступный

beforeValidate( Model $Model , array $options array() )

Обработчик beforeValidate

Параметры

Model $Model
Модель, на которой был вызван invalidFields.
массив $options необязательно массив()
Опции, переданные из Model::save().

Возвращает

boolean
bool

См. также

Model::save()

Переопределяет

ModelBehavior::beforeValidate()

bindTranslationисходный код общедоступный

bindTranslation( Model $Model , string|array $fields , boolean $reset true )

Связывает перевод для полей, необязательно с ассоциацией hasMany для фиктивного поля.

Примечание Следует избегать связывания переводов, которые перекрывают существующие свойства модели. Это может привести к непредсказуемому и нежелательному поведению.

Параметры

Model $Model
использующая данное поведение модель
строка|массив $fields
строка с полем или массив(поле1, поле2=>ИмяАссоциации, поле3)
логическое значение $reset необязательно истина
Оставить значение true, чтобы поля изменялись только для следующей операции. Если ложь, поле будет добавлено для всех будущих запросов.

Возвращает

boolean
bool

Исключения

CakeException
при попытке привязать перевод с именем, используемым для перевода. Это запрещено, так как это затеняет Model::$name.
END_OF_DOCUMENT_MARKER

cleanupsource public

cleanup( Model $Model )

Метод обратного вызова cleanup отвязывает привязанные переводы и удаляет информацию о настройках.

Параметры

Model $Model
Модель, которая отсоединяется.

Переопределяет

ModelBehavior::cleanup()

setupsource public

setup( Model $Model , array $config array() )

Метод обратного вызова

$config для TranslateBehavior должен быть массивом ('fields' => array('field_one', 'field_two' => 'FieldAssoc', 'field_three'))

В приведённом примере будет установлено только одно постоянное hasMany соединение (для field_two как FieldAssoc)

$config может быть пустым - и переводы настраиваются динамически методом bindTranslation()

Параметры

Model $Model
Модель, к которой прикрепляется поведение.
массив $config необязательно array()
Массив с информацией о конфигурации.

Возвращает

mixed
смешанный тип

Переопределяет

ModelBehavior::setup()

translateModelsource public

translateModel( Model $Model )

Получить экземпляр модели для переводов.

Если для модели установлено свойство translateModel, оно будет использоваться в качестве имени класса для поиска/использования. Если свойство translateModel не найдено, будет использоваться 'I18nModel'.

Параметры

Model $Model
Модель, для которой нужно получить translateModel.

Возвращает

Model
Модель

unbindTranslationsource public

unbindTranslation( Model $Model , string|array $fields null )

Отвязать перевод для полей, необязательно отвязать ассоциацию hasMany для фиктивного поля

Параметры

Model $Model
используя это поведение модели
строка|массив $fields необязательно null
строка с полем, или массив (field1, field2=>AssocName, field3), или null для отвязки всех оригинальных переводов

Возвращает

boolean
boolean

Методы, унаследованные от ModelBehavior

_addToWhitelistsource protected

_addToWhitelist( Model $model , string $field )

Если свойство whitelist модели не пустое, $field будет добавлен в него. Примечание: этот метод следует использовать только в beforeValidate или beforeSave, чтобы убедиться, что он изменяет список разрешённых полей только для текущей операции сохранения. Также убедитесь, что вы явно установили значение поля, которое вы разрешаете.

Параметры

Model $model
Модель, использующая это поведение
строка $field
Поле, которое нужно добавить в список разрешённых полей модели

beforeDeletesource public

beforeDelete( Model $model , boolean $cascade true )

beforeDelete вызывается перед любой операцией удаления прикреплённой модели, но после вызова метода beforeDelete модели. Возврат значения false из beforeDelete прервёт удаление.

Параметры

Model $model
Модель, использующая это поведение
boolean $cascade необязательно true
Если true, записи, которые зависят от этой записи, также будут удалены

Возвращает

mixed
False, если операция должна быть прервана. Любой другой результат будет продолжен.

onErrorsource public

onError( Model $model , string $error )

Обработчик ошибок источника данных

Параметры

Model $model
Модель, использующая это поведение
строка $error
Ошибка, сгенерированная в DataSource

Методы, унаследованные от Object

__constructsource public

__construct( )

Конструктор, пустая операция

_mergeVarssource protected

_mergeVars( array $properties , string $class , boolean $normalize true )

Объединяет свойство $property этого объекта со свойством в определении $class. Значение этого класса для свойства будет объединено поверх $class'

Это обеспечивает некоторые из возможностей DRY, предоставляемые CakePHP. Если вы хотите отключить его, переопределите этот метод как пустую функцию.

Параметры

массив $properties
Имя свойств для объединения.
строка $class
Класс, с которым объединить свойство.
boolean $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 при успехе/неудачи, или содержимое рендеренного действия, если 'return' задан в $extra.
END_OF_DOCUMENT_MARKER

toStringsource public

toString( )

Преобразование объекта в строку. Каждый класс может переопределить этот метод по необходимости.

Возвращает

string
Имя этого класса

Краткое описание свойств

$_joinTablesource

protected object

Хранит объект joinTable для генерации объединений.

$_runtimeModelsource

protected Model

Хранит модель runtime для генерации объединений.

$runtimesource

public array

Используется для конфигурации модели во время выполнения

array()

Свойства, унаследованные от ModelBehavior

$mapMethodssource

public array

Позволяет сопоставлять регулярные выражения preg-совместимые с публичными или приватными методами в этом классе, где ключ массива является регулярным выражением /-разделенным, а значение — методом класса. Аналогично функциональности магических методов findBy* / findAllBy*.

array()

$settingssource

public array

Содержит параметры конфигурации для использования с отдельными объектами моделей. Это используется, потому что, если несколько моделей используют этот Behavior, каждый будет использовать тот же экземпляр объекта. Отдельные настройки модели должны храниться в ассоциативном массиве, индексированном по имени модели.

См. также

Model::$alias
array()

© 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-TranslateBehavior.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API