BelongsTo
class BelongsTo extends Relation (View source)
Свойства
| SupportsDefaultModels |
| Macroable |
Свойства
| static protected array | $macros | Зарегистрированные строковые макросы. | from Macroable |
| protected Builder | $query | Экземпляр Eloquent-запроса. | from Relation |
| protected Model | $parent | Экземпляр родительской модели. | from Relation |
| protected Model | $related | Экземпляр связанной модели. | from Relation |
| static protected bool | $constraints | Указывает, добавляет ли отношение ограничения. | from Relation |
| static protected array | $morphMap | Массив для сопоставления имен классов с их именами морфизма в базе данных. | from Relation |
| protected Closure|array|bool | $withDefault | Указывает, следует ли использовать экземпляр модели по умолчанию. | from SupportsDefaultModels |
| protected | $child | Экземпляр дочерней модели отношения. | |
| protected string | $foreignKey | Внешний ключ родительской модели. | |
| protected string | $ownerKey | Связанный ключ в родительской модели. |
| protected string | $relation | Имя отношения. | |
| static protected int | $selfJoinCount | Количество самосоединений. |
Методы
| static void | macro(string $name, object|callable $macro) Зарегистрировать пользовательское макро. | from Macroable |
| static void | mixin(object $mixin) Смешать другой объект в класс. | from Macroable |
| static bool | hasMacro(string $name) Проверить, зарегистрировано ли макро. | from Macroable |
| static mixed | __callStatic(string $method, array $parameters) Динамически обработать вызовы к классу. | from Macroable |
| mixed | __call(string $method, array $parameters) Динамически обработать вызовы к классу. | from Macroable |
| void | __construct(Builder $query, Model $child, string $foreignKey, string $ownerKey, string $relation) Создать новый экземпляр связи belongs to. | |
| static mixed | noConstraints(Closure $callback) Выполнить коллбек без ограничений для связи. | from Relation |
| void | addConstraints() Установить базовые ограничения на запрос отношения. | |
| void | addEagerConstraints(array $models) Установить ограничения для жадного загрузки отношения. | |
| array | initRelation(array $models, string $relation) Инициализировать отношение для набора моделей. | |
| array | match(array $models, Collection $results, string $relation) Сопоставить загруженные результаты с родительскими объектами. | |
| mixed | getResults() Получить результаты отношения. | |
| Collection | getEager() Получить отношение для жадной загрузки. | |
| Collection | get(array $columns = ['*']) Выполнить запрос как «выбрать» операцию. | from Relation |
| void | touch() Обновить метку времени для всех связанных моделей отношения. | from Relation |
| int | rawUpdate(array $attributes = []) Выполнить сырое обновление по основному запросу. | from Relation |
| Builder | getRelationExistenceCountQuery(Builder $query, Builder $parentQuery) Добавить ограничения для запроса подсчёта существования связи. | from Relation |
| Builder | getRelationExistenceQuery(Builder $query, Builder $parentQuery, array|mixed $columns = ['*']) Добавить ограничения для запроса связи. | |
| array | getKeys(array $models, string $key = null) Получить все первичные ключи для массива моделей. | from Relation |
| Builder | getQuery() Получить базовый запрос для связи. | from Relation |
| Builder | getBaseQuery() Получить базовый билдер запроса, управляющий билдером Eloquent. | from Relation |
| Model | getParent() Получить родительскую модель связи. | from Relation |
| строка | getQualifiedParentKeyName() Получить полное имя родительского ключа. | из Relation |
| Модель | getRelated() Получить связанную модель отношения. | из Relation |
| строка | createdAt() Получить имя столбца "created at". | из Relation |
| строка | updatedAt() Получить имя столбца "updated at". | из Relation |
| строка | relatedUpdatedAt() Получить имя столбца "updated at" связанной модели. | из Relation |
| статический массив | morphMap(array $map = null, bool $merge = true) Установить или получить карту морфинга для полиморфных отношений. | из Relation |
| статический массив|null | buildMorphMapFromModels(array $models = null) Создает таблично-ключевой массив из имен классов моделей. | из Relation |
| статический string|null | getMorphedModel(string $alias) Получить модель, связанную с пользовательским полиморфным типом. | из Relation |
| void | __clone() Принудительно клонировать базовый билдер запросов при клонировании. | из Relation |
| Модель | newRelatedInstanceFor(Модель $parent) Создать новый связанный экземпляр для заданной модели. | |
| $this | withDefault(Closure|array|bool $callback = true) Возвратить новый экземпляр модели в случае, если связь отсутствует. | из SupportsDefaultModels |
| Модель|null | getDefaultFor(Модель $parent) Получить значение по умолчанию для этой связи. | из SupportsDefaultModels |
| массив | getEagerModelKeys(array $models) Собрать ключи из массива связанных моделей. | |
| смешанный тип | update(array $attributes) Обновить родительскую модель в рамках связи. |
| Модель | associate(Модель|int|string $model) Связать экземпляр модели с заданным родителем. | |
| Модель | dissociate() Отвязать ранее связанную модель от заданного родителя. | |
| Билдер | getRelationExistenceQueryForSelfRelation(Билдер $query, Билдер $parentQuery, array|mixed $columns = ['*']) Добавить ограничения для запроса отношения на той же таблице. | |
| string | getRelationCountHash() Получить хеш таблицы объединения отношения. | |
| bool | relationHasIncrementingId() Определить, имеет ли связанная модель автоинкрементный ID. | |
| string | getForeignKey() Получить внешний ключ отношения. | |
| string | getQualifiedForeignKey() Получить полностью квалифицированный внешний ключ отношения. | |
| string | getOwnerKey() Получить связанный ключ отношения. | |
| string | getQualifiedOwnerKeyName() Получить полностью квалифицированный связанный ключ отношения. | |
| string | getRelation() Получить имя отношения. |
Подробности
static void macro(string $name, object|callable $macro)
Зарегистрировать пользовательскую макрос.
static void mixin(object $mixin)
Добавить другой объект в класс.
static bool hasMacro(string $name)
Проверка, зарегистрирована ли макрос.
static mixed __callStatic(string $method, array $parameters)
Динамически обработать вызовы класса.
mixed __call(string $method, array $parameters)
Динамически обрабатывает вызовы к классу.
void __construct(Builder $query, Model $child, string $foreignKey, string $ownerKey, string $relation)
Создать новый экземпляр отношения belongs to.
static mixed noConstraints(Closure $callback)
Выполнить обратный вызов с отключенными ограничениями для отношения.
void addConstraints()
Установить базовые ограничения для запроса отношения.
void addEagerConstraints(array $models)
Установить ограничения для жадной загрузки отношения.
array initRelation(array $models, string $relation)
Инициализировать отношение для набора моделей.
array match(array $models, Collection $results, string $relation)
Сопоставить результаты жадной загрузки с их родителями.
mixed getResults()
Получить результаты отношения.
Collection getEager()
Получить отношение для жадной загрузки.
Коллекция get(array $columns = ['*'])
Выполнить запрос в качестве оператора «select».
void touch()
Обновить все связанные модели для связи.
int rawUpdate(array $attributes = [])
Выполнить сырое обновление по базовому запросу.
Билдер getRelationExistenceCountQuery(Билдер $query, Билдер $parentQuery)
Добавить ограничения для запроса подсчёта существования связи.
Builder getRelationExistenceQuery(Builder $query, Builder $parentQuery, array|mixed $columns = ['*'])
Добавить ограничения для запроса отношения.
protected array getKeys(array $models, string $key = null)
Получить все первичные ключи для массива моделей.
Builder getQuery()
Получить базовый запрос для отношения.
Builder getBaseQuery()
Получить базовый билдер запроса, управляющий билдером Eloquent.
Модель getParent()
Получить родительскую модель отношения.
string getQualifiedParentKeyName()
Получить полное квалифицированное имя родительского ключа.
Модель getRelated()
Получить связанную модель отношения.
string createdAt()
Получить имя столбца "создано в".
string updatedAt()
Получить имя столбца "обновлено в".
string relatedUpdatedAt()
Получить имя столбца "обновлено в" для связанной модели.
static array morphMap(array $map = null, bool $merge = true)
Установить или получить карту морфирования для полиморфных отношений.
static protected array|null buildMorphMapFromModels(array $models = null)
Создает массив с ключами-таблицами из имён классов моделей.
static string|null getMorphedModel(string $alias)
Получить модель, связанную с пользовательским полиморфным типом.
void __clone()
Принудительно клонировать базовый билдер запросов при клонировании.
protected Model newRelatedInstanceFor(Model $parent)
Создать новую связанную сущность для указанной модели.
$this withDefault(Closure|array|bool $callback = true)
Возвращает новый экземпляр модели в случае, если отношение не существует.
protected Модель|null getDefaultFor(Модель $parent)
Получить значение по умолчанию для этого отношения.
protected array getEagerModelKeys(array $models)
Собрать ключи из массива связанных моделей.
mixed update(array $attributes)
Обновить родительскую модель в отношении.
Модель dissociate()
Отвязать ранее связанную модель от заданного родителя.
Построитель getRelationExistenceQueryForSelfRelation(Построитель $query, Построитель $parentQuery, array|mixed $columns = ['*'])
Добавить ограничения для запроса отношения на том же столе.
строка getRelationCountHash()
Получить хеш таблицы соединения отношения.
protected bool relationHasIncrementingId()
Определить, имеет ли связанная модель автоинкрементируемый ID.
string getForeignKey()
Получить внешний ключ отношения.
string getQualifiedForeignKey()
Получить полностью квалифицированный внешний ключ отношения.
string getOwnerKey()
Получить связанный ключ отношения.
string getQualifiedOwnerKeyName()
Получить полностью квалифицированный связанный ключ отношения.
string getRelation()
Получить имя отношения.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.5/Illuminate/Database/Eloquent/Relations/BelongsTo.html