Spec-Zone.ru › CakePHP 2.8

Класс TranslateBehavior

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

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

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

  • $_joinTable protected
    object
    Хранит объект joinTable для генерации объединений.
  • $_runtimeModel protected
    Model
    Хранит модель во время выполнения для генерации объединений.
  • $runtime public
    array
    Используется для конфигурации модели во время выполнения.

Унаследованные свойства

  • mapMethods, settings

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

  • _addJoin() protected
    Добавляет объединение для переведенных полей.
  • _checkConditions() protected

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

  • _getLocale() protected
    Получение выбранного языка для модели.
  • _prepareTranslations() protected

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

  • _removeField() protected
    Обновляет данные для заданного поля во время выполнения.
  • _setRuntimeData() protected
    Устанавливает данные во время выполнения.
  • afterDelete() public
    Обработчик afterDelete.
  • afterFind() public
    Обработчик afterFind.
  • afterSave() public
    Обработчик afterSave.
  • afterValidate() public

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

  • beforeFind() public
    Обработчик beforeFind.
  • beforeSave() public
    Обработчик beforeSave.
  • beforeValidate() public
    Обработчик beforeValidate.
  • bindTranslation() public

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

  • cleanup() public
    Обработчик очистки, отвязывает привязанные переводы и удаляет информацию о настройках.
  • setup() public
    Обработчик.
  • translateModel() public
    Получение экземпляра модели для переводов.
  • unbindTranslation() public

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

END_OF_DOCUMENT_MARKER

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

_addJoin()source protected

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

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

Параметры

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

Возвращает

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

_checkConditions()source protected

_checkConditions( Model $Model , array $query )

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

Параметры

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

Возвращает

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

_getLocale()source protected

_getLocale( Model $Model )

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

Параметры

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

Возвращает

смешанный тип
строка или ложь

_prepareTranslations()source protected

_prepareTranslations( Model $Model , array $data )

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

Параметры

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

Возвращает

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

_removeField()source protected

_removeField( Model $Model , string $field )

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

Параметры

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

_setRuntimeData()source protected

_setRuntimeData( Model $Model )

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

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

Параметры

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

afterDelete()source public

afterDelete( Model $Model )

Обработчик после удаления.

Параметры

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

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

ModelBehavior::afterDelete()

afterFind()source public

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

Обработчик после поиска.

Параметры

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

Возвращает

массив
Изменённые результаты

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

ModelBehavior::afterFind()

afterSave()source public

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

Обработчик после сохранения.

Параметры

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

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

ModelBehavior::afterSave()

afterValidate()source public

afterValidate( Model $Model )

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

Параметры

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

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

ModelBehavior::afterValidate()

beforeFind()source public

beforeFind( Model $Model , array $query )

Обработчик beforeFind

Параметры

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

Возвращает

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

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

ModelBehavior::beforeFind()

beforeSave()source public

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

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

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

Параметры

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

Возвращает

boolean
true.

См. также

Model::save()

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

ModelBehavior::beforeSave()

beforeValidate()source public

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

Обработчик beforeValidate

Параметры

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

Возвращает

boolean

См. также

Model::save()

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

ModelBehavior::beforeValidate()

bindTranslation()source public

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

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

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

Параметры

Model $Model
использующая этот метод поведения модель
строка|массив $fields
строка с полем или массив(поле1, поле2=>ИмяАссоциации, поле3)
boolean $reset необязательно true

Оставить true, чтобы поля изменялись только для следующей операции. Если false, поле будет добавлено для всех будущих запросов.

Возвращает

boolean

Исключения

CakeException

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


cleanup()source public

cleanup( Model $Model )

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

Параметры

Model $Model
Отсоединяемая модель.

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

ModelBehavior::cleanup()

setup()source public

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

Обработчик

$config для TranslateBehavior должен быть массивом ('fields' => массив('поле_один', 'поле_два' => 'ПолеАссоциации', 'поле_три'))

В приведённом выше примере будет установлено только одно постоянное hasMany (для поля_два как ПолеАссоциации)

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

Параметры

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

Возвращает

смешанное

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

ModelBehavior::setup()

translateModel()source public

translateModel( Model $Model )

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

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

Параметры

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

Возвращает

Model

unbindTranslation()source public

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

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

Параметры

Model $Model
использующая это поведение модель
строка|массив $fields необязательно null

строка с полем, или массив(поле1, поле2=>ИмяАссоциации, поле3), или null для отвязки всех оригинальных переводов

Возвращает

boolean

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

_addToWhitelist()source protected

_addToWhitelist( Model $model , string $field )

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

Параметры

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

beforeDelete()source public

beforeDelete( Model $model , boolean $cascade true )

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

Параметры

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

Возвращает

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

onError()source public

onError( Model $model , string $error )

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

Параметры

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

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

__construct()source public

__construct( )

Конструктор, бездействие

_mergeVars()source protected

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

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

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

Параметры

массив $properties
Имя свойств для объединения.
строка $class
Класс для объединения свойства с ним.
boolean $normalize необязательно true
Установите в значение true, чтобы выполнить свойства через Hash::normalize() перед объединением.

_set()source protected

_set( array $properties array() )

Позволяет установить несколько свойств объекта в одной строке кода. Будут установлены только свойства, которые являются частью объявления класса.

Параметры

массив $properties необязательно массив()
Ассоциативный массив, содержащий свойства и соответствующие значения.

_stop()source protected

_stop( integer|string $status 0 )

Останавливает выполнение текущего сценария. Обёртка над exit(), что упрощает тестирование.

Параметры

целое число|строка $status необязательно 0
см. http://php.net/exit для значений

dispatchMethod()source public

dispatchMethod( string $method , array $params array() )

Вызывает метод этого объекта с заданными параметрами. Предоставляет объектно-ориентированную обёртку для call_user_func_array

Параметры

строка $method
Имя вызываемого метода
массив $params необязательно array()
Список параметров для вызова $method

Возвращает

mixed
Результат вызова метода

log()source 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
Успешность записи в лог

requestAction()source 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'.


toString()source public

toString( )

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

Возвращает

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

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

$_joinTablesource

protected объект

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

$_runtimeModelsource

protected Model

Хранит временную модель для генерации соединений.

$runtimesource

public массив

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

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.8/class-TranslateBehavior.html

Spec-Zone.ru

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