Spec-Zone.ru › Laravel 5.2

BelongsToMany

class BelongsToMany extends Relation (View source)

Свойства

protected Builder $query Экземпляр билдера запросов Eloquent. из Relation
protected Model $parent Экземпляр родительской модели. из Relation
protected Model $related Экземпляр связанной модели. из Relation
static protected bool $constraints Указывает, добавляет ли отношение ограничения. из Relation
static protected array $morphMap Массив для сопоставления имен классов с их именами морфинг в базе данных. из Relation
protected string $table Промежуточная таблица для отношения.
protected string $foreignKey Внешний ключ родительской модели.
protected string $otherKey Связанный ключ отношения.
protected string $relationName Имя отношения.
protected array $pivotColumns Столбцы промежуточной таблицы для получения.
protected array $pivotWheres Любые ограничения промежуточной таблицы для условий where.
protected array $pivotWhereIns Любые ограничения промежуточной таблицы для условий whereIn.
protected string $pivotCreatedAt Пользовательский столбец промежуточной таблицы для отметки created_at.
protected string $pivotUpdatedAt Пользовательский столбец промежуточной таблицы для отметки updated_at.
static protected int $selfJoinCount Количество самосоединений.

Методы

void __construct(Builder $query, Model $parent, string $table, string $foreignKey, string $otherKey, string $relationName = null)

Создать новый экземпляр отношения belongs to many.

void addConstraints()

Установить базовые ограничения для запроса отношения.

void addEagerConstraints(array $models)

Установить ограничения для жадного загрузки отношения.

array initRelation(array $models, string $relation)

Инициализировать отношение для набора моделей.

array match(array $models, Collection $results, string $relation)

Сопоставить загруженные жадно результаты с их родителями.

mixed getResults()

Получить результаты отношения.

Collection getEager()

Получить отношение для жадной загрузки.

из Relation
void touch()

Обновить метки времени для всех связанных моделей отношения.

int rawUpdate(array $attributes = [])

Выполнить сырое обновление для базового запроса.

из Relation
Builder getRelationCountQuery(Builder $query, Builder $parent)

Добавить ограничения для запроса подсчёта отношения.

из Relation
Builder getRelationQuery(Builder $query, Builder $parent, array|mixed $columns = ['*'])

Добавить ограничения для запроса отношения.

static mixed noConstraints(Closure $callback)

Выполнить коллбэк с отключёнными ограничениями для отношения.

из Relation
array getKeys(array $models, string $key = null)

Получить все первичные ключи для массива моделей.

из Relation
Builder getQuery()

Получить базовый запрос для отношения.

из Relation
Builder getBaseQuery()

Получить базовый билдер запроса, используемый Eloquent билдером.

из Relation
Model getParent()

Получить родительскую модель отношения.

из Relation
string getQualifiedParentKeyName()

Получить полное имя родительского ключа.

из Relation
Model getRelated()

Получить связанную модель отношения.

из Relation
string createdAt()

Получить имя столбца "created at".

string updatedAt()

Получить имя столбца "updated at".

string relatedUpdatedAt()

Получить имя столбца "updated at" связанной модели.

из Relation
string wrap(string $value)

Оборачивает значение с помощью синтаксиса грамматики родительского запроса.

из Relation
static array morphMap(array $map = null, bool $merge = true)

Установить или получить мапу морфизма для полиморфных отношений.

из Relation
static array|null buildMorphMapFromModels(array $models = null)

Создаёт таблично-индексированный массив из имён классов моделей.

из Relation
mixed __call(string $method, array $parameters)

Обработка динамических вызовов методов отношения.

из Relation
void __clone()

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

из Relation
BelongsToMany wherePivot(string $column, string $operator = null, mixed $value = null, string $boolean = 'and')

Установить условие where для столбца таблицы связей.

BelongsToMany wherePivotIn(string $column, mixed $values, string $boolean = 'and', bool $not = false)

Установить условие "where in" для столбца таблицы связей.

BelongsToMany orWherePivot(string $column, string $operator = null, mixed $value = null)

Установить условие "or where" для столбца таблицы связей.

BelongsToMany orWherePivotIn(string $column, mixed $values)

Установить условие "or where in" для столбца таблицы связей.

mixed first(array $columns = ['*'])

Выполнить запрос и получить первый результат.

Model|BelongsToMany firstOrFail(array $columns = ['*'])

Выполнить запрос и получить первый результат, иначе выбросить исключение.

Коллекция get(array $columns = ['*'])

Выполнить запрос в качестве оператора «select».

LengthAwarePaginator paginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Получить разбиение по страницам для оператора «select».

Paginator simplePaginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page')

Разбить результат запроса на страницы с помощью простого разбиения по страницам.

bool chunk(int $count, callable $callback)

Разбить результаты запроса на части.

void hydratePivotRelation(array $models)

Заполнить отношение к таблице связей в моделях.

array cleanPivotAttributes(Модель $model)

Получить атрибуты связи из модели.

Builder getRelationQueryForSelfJoin(Builder $query, Builder $parent, array|mixed $columns = ['*'])

Добавить ограничения для запроса отношения к одной и той же таблице.

string getRelationCountHash()

Получить хеш таблицы соединения отношения.

BelongsToMany getSelectColumns(array $columns = ['*'])

Установить оператор select для запроса отношения.

array getAliasedPivotColumns()

Получить столбцы связи для отношения.

bool hasPivotColumn(string $column)

Определить, является ли заданный столбец столбцом связи.

$this setJoin(Builder|null $query = null)

Установить условие соединения для запроса отношения.

$this setWhere()

Установить условие where для запроса отношения.

array buildDictionary(Коллекция $results)

Создать словарь модели, индексированный по внешнему ключу отношения.

Коллекция getRelatedIds()

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

Модель save(Модель $model, array $joining = [], bool $touch = true)

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

array saveMany(Коллекция|array $models, array $joinings = [])

Сохранить массив новых моделей и прикрепить их к родительской модели.

Модель|Коллекция|null find(mixed $id, array $columns = ['*'])

Найти связанную модель по ее первичному ключу.

Коллекция findMany(mixed $ids, array $columns = ['*'])

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

Модель|Коллекция findOrFail(mixed $id, array $columns = ['*'])

Найти связанную модель по ее первичному ключу или выбросить исключение.

Коллекция|Модель findOrNew(mixed $id, array $columns = ['*'])

Найти связанную модель по ее первичному ключу или вернуть новый экземпляр связанной модели.

Модель firstOrNew(array $attributes)

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

Модель firstOrCreate(array $attributes, array $joining = [], bool $touch = true)

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

Модель updateOrCreate(array $attributes, array $values = [], array $joining = [], bool $touch = true)

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

Модель create(array $attributes, array $joining = [], bool $touch = true)

Создать новый экземпляр связанной модели.

array createMany(array $records, array $joinings = [])

Создать массив новых экземпляров связанных моделей.

array syncWithoutDetaching(Коллекция|array $ids)

Синхронизировать промежуточные таблицы со списком идентификаторов без отсоединения.

array sync(Коллекция|array $ids, bool $detaching = true)

Синхронизировать промежуточные таблицы со списком идентификаторов или коллекцией моделей.

array formatSyncList(array $records)

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

array attachNew(array $records, array $current, bool $touch = true)

Прикрепить все идентификаторы, которые отсутствуют в текущем массиве.

int updateExistingPivot(mixed $id, array $attributes, bool $touch = true)

Обновить существующую запись связи в таблице.

void attach(mixed $id, array $attributes = [], bool $touch = true)

Прикрепить модель к родительской.

array createAttachRecords(array $ids, array $attributes)

Создать массив записей для вставки в таблицу связи.

array attacher(int $key, mixed $value, array $attributes, bool $timed)

Создать полный массив данных для прикрепления.

array getAttachId(mixed $key, mixed $value, array $attributes)

Получить идентификатор записи прикрепления и дополнительные атрибуты.

array createAttachRecord(int $id, bool $timed)

Создать новую запись прикрепления к таблице связей.

array setTimestampsOnAttach(array $record, bool $exists = false)

Установить метки времени создания и обновления для записи присоединения.

int detach(mixed $ids = [], bool $touch = true)

Отсоединить модели от связи.

void touchIfTouching()

Если мы затрагиваем родительскую модель, обновить её метку времени.

bool touchingParent()

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

string guessInverseRelation()

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

Builder newPivotQuery()

Создать новый запрос для промежуточной таблицы.

Builder newPivotStatement()

Получить новый простой запрос для промежуточной таблицы.

Builder newPivotStatementForId(mixed $id)

Получить новый запрос для промежуточной таблицы по заданному идентификатору.

Pivot newPivot(array $attributes = [], bool $exists = false)

Создать новый экземпляр модели промежуточной таблицы.

Pivot newExistingPivot(array $attributes = [])

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

$this withPivot(array|mixed $columns)

Установить столбцы промежуточной таблицы для извлечения.

BelongsToMany withTimestamps(mixed $createdAt = null, mixed $updatedAt = null)

Указать, что промежуточная таблица имеет метки времени создания и обновления.

string getRelatedFreshUpdate()

Получить имя столбца "updated_at" связанной модели.

string getHasCompareKey()

Получить ключ для сравнения с ключом родительской модели в запросе "has".

string getForeignKey()

Получить полное имя внешнего ключа для связи.

string getOtherKey()

Получить полное имя "другого ключа" для связи.

string getTable()

Получить промежуточную таблицу для связи.

string getRelationName()

Получить имя связи.

Подробности

void __construct(Builder $query, Model $parent, string $table, string $foreignKey, string $otherKey, string $relationName = null)

Создать новый экземпляр связи "многие ко многим".

Параметры

Builder $query
Model $parent
string $table
string $foreignKey
string $otherKey
string $relationName

Возвращаемое значение

void

void addConstraints()

Установить базовые ограничения для запроса связи.

Возвращаемое значение

void

void addEagerConstraints(array $models)

Установить ограничения для жадного загрузки связи.

Параметры

array $models

Возвращаемое значение

void

array initRelation(array $models, string $relation)

Инициализировать связь для набора моделей.

Параметры

array $models
string $relation

Возвращаемое значение

array

array match(array $models, Collection $results, string $relation)

Сопоставить загруженные результаты с их родительскими моделями.

Параметры

array $models
Collection $results
string $relation

Возвращаемое значение

array

mixed getResults()

Получить результаты связи.

Возвращаемое значение

mixed

Collection getEager()

Получить связь для жадной загрузки.

Возвращаемое значение

Collection

void touch()

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

Например: обновить метку времени всех ролей, связанных с этим пользователем.

Возвращаемое значение

void

int rawUpdate(array $attributes = [])

Выполнить обновление с помощью SQL запроса для базового запроса.

Параметры

array $attributes

Возвращаемое значение

int

Builder getRelationCountQuery(Builder $query, Builder $parent)

Добавить ограничения для запроса подсчета записей связи.

Параметры

Builder $query
Builder $parent

Возвращаемое значение

Builder
END_OF_DOCUMENT_MARKER

Builder getRelationQuery(Builder $query, Builder $parent, array|mixed $columns = ['*'])

Добавить ограничения для запроса отношения.

Параметры

Builder $query
Builder $parent
array|mixed $columns

Возвращаемое значение

Builder

static mixed noConstraints(Closure $callback)

Выполнить обратный вызов с отключёнными ограничениями для отношения.

Параметры

Closure $callback

Возвращаемое значение

mixed

protected array getKeys(array $models, string $key = null)

Получить все первичные ключи для массива моделей.

Параметры

array $models
string $key

Возвращаемое значение

array

Builder getQuery()

Получить базовый запрос для отношения.

Возвращаемое значение

Builder

Builder getBaseQuery()

Получить базовый билдер запроса, управляющий билдером Eloquent.

Возвращаемое значение

Builder

Model getParent()

Получить родительскую модель отношения.

Возвращаемое значение

Model

string getQualifiedParentKeyName()

Получить полное имя родительского ключа.

Возвращаемое значение

string

Model getRelated()

Получить связанную модель отношения.

Возвращаемое значение

Model

string createdAt()

Получить имя столбца «создано в».

Возвращаемое значение

string

string updatedAt()

Получить имя столбца «обновлено в».

Возвращаемое значение

string

string relatedUpdatedAt()

Получить имя столбца «обновлено в» связанной модели.

Возвращаемое значение

string

string wrap(string $value)

Оборачивает заданное значение с помощью синтаксического анализатора родительского запроса.

Параметры

string $value

Возвращаемое значение

string

static array morphMap(array $map = null, bool $merge = true)

Установить или получить карту morph для полиморфных отношений.

Параметры

array $map
bool $merge

Возвращаемое значение

array

static protected array|null buildMorphMapFromModels(array $models = null)

Создаёт таблично-индексированный массив из имён классов моделей.

Параметры

array $models

Возвращаемое значение

array|null

mixed __call(string $method, array $parameters)

Обработать динамические вызовы методов для отношения.

Параметры

string $method
array $parameters

Возвращаемое значение

mixed

void __clone()

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

Возвращаемое значение

void

BelongsToMany wherePivot(string $column, string $operator = null, mixed $value = null, string $boolean = 'and')

Установить условие where для столбца таблицы связей.

Параметры

string $column
string $operator
mixed $value
string $boolean

Возвращаемое значение

BelongsToMany

BelongsToMany wherePivotIn(string $column, mixed $values, string $boolean = 'and', bool $not = false)

Установить условие «where in» для столбца таблицы связей.

Параметры

string $column
mixed $values
string $boolean
bool $not

Возвращаемое значение

BelongsToMany

BelongsToMany orWherePivot(string $column, string $operator = null, mixed $value = null)

Установить условие «or where» для столбца таблицы связей.

Параметры

string $column
string $operator
mixed $value

Возвращаемое значение

BelongsToMany

BelongsToMany orWherePivotIn(string $column, mixed $values)

Установить условие «or where in» для столбца таблицы связей.

Параметры

string $column
mixed $values

Возвращаемое значение

BelongsToMany

смешанный first(array $columns = ['*'])

Выполнить запрос и получить первый результат.

Параметры

массив $columns

Возвращаемое значение

смешанный

Модель|Связь многие ко многим firstOrFail(array $columns = ['*'])

Выполнить запрос и получить первый результат или выбросить исключение.

Параметры

массив $columns

Возвращаемое значение

Модель|Связь многие ко многим

Исключения

Исключение отсутствия модели

Коллекция get(array $columns = ['*'])

Выполнить запрос в качестве оператора «выбрать».

Параметры

массив $columns

Возвращаемое значение

Коллекция

Страничный результат с информацией о количестве элементов paginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page', int|null $page = null)

Получить страницу для оператора «выбрать».

Параметры

целое $perPage
массив $columns
строка $pageName
целое|null $page

Возвращаемое значение

Страничный результат с информацией о количестве элементов

Страничный результат simplePaginate(int $perPage = null, array $columns = ['*'], string $pageName = 'page')

Разбить данный запрос на страницы с простым страничным результатом.

Параметры

целое $perPage
массив $columns
строка $pageName

Возвращаемое значение

Страничный результат

логический тип chunk(int $count, callable $callback)

Разбить результаты запроса на куски.

Параметры

целое $count
вызываемый объект $callback

Возвращаемое значение

логический тип

защищённый пустое значение hydratePivotRelation(array $models)

Заполнить отношение pivot таблицы в моделях.

Параметры

массив $models

Возвращаемое значение

пустое значение

защищённый массив cleanPivotAttributes(Модель $model)

Получить атрибуты pivot из модели.

Параметры

Модель $model

Возвращаемое значение

массив

Библиотекарь getRelationQueryForSelfJoin(Библиотекарь $query, Библиотекарь $parent, array|mixed $columns = ['*'])

Добавить ограничения для запроса отношений на той же таблице.

Параметры

Библиотекарь $query
Библиотекарь $parent
массив|смешанный $columns

Возвращаемое значение

Библиотекарь

строка getRelationCountHash()

Получить хеш таблицы соединения отношения.

Возвращаемое значение

строка

защищённый Связь многие ко многим getSelectColumns(array $columns = ['*'])

Установить предложение select для запроса отношения.

Параметры

массив $columns

Возвращаемое значение

Связь многие ко многим

защищённый массив getAliasedPivotColumns()

Получить столбцы pivot для отношения.

Возвращаемое значение

массив

защищённый логический тип hasPivotColumn(string $column)

Определить, определён ли данный столбец как столбец pivot.

Параметры

строка $column

Возвращаемое значение

логический тип

защищённый $this setJoin(Библиотекарь|null $query = null)

Установить предложение join для запроса отношения.

Параметры

Библиотекарь|null $query

Возвращаемое значение

$this

защищённый $this setWhere()

Установить предложение where для запроса отношения.

Возвращаемое значение

$this

защищённый массив buildDictionary(Коллекция $results)

Создать словарь моделей, индексированный по внешнему ключу отношения.

Параметры

Коллекция $results

Возвращаемое значение

массив

Коллекция getRelatedIds()

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

Возвращаемое значение

Коллекция
END_OF_DOCUMENT_MARKER

Модель save(Модель $model, array $joining = [], bool $touch = true)

Сохранить новую модель и прикрепить её к родительской модели.

Параметры

Модель $model
array $joining
bool $touch

Возвращаемое значение

Модель

array saveMany(Коллекция|array $models, array $joinings = [])

Сохранить массив новых моделей и прикрепить их к родительской модели.

Параметры

Коллекция|array $models
array $joinings

Возвращаемое значение

array

Модель|Коллекция|null find(mixed $id, array $columns = ['*'])

Найти связанную модель по её первичному ключу.

Параметры

mixed $id
array $columns

Возвращаемое значение

Модель|Коллекция|null

Коллекция findMany(mixed $ids, array $columns = ['*'])

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

Параметры

mixed $ids
array $columns

Возвращаемое значение

Коллекция

Модель|Коллекция findOrFail(mixed $id, array $columns = ['*'])

Найти связанную модель по её первичному ключу или выбросить исключение.

Параметры

mixed $id
array $columns

Возвращаемое значение

Модель|Коллекция

Исключения

ИсключениеНеНайденаМодель

Коллекция|Модель findOrNew(mixed $id, array $columns = ['*'])

Найти связанную модель по её первичному ключу или вернуть новый экземпляр связанной модели.

Параметры

mixed $id
array $columns

Возвращаемое значение

Коллекция|Модель

Модель firstOrNew(array $attributes)

Получить первую запись связанной модели, соответствующую атрибутам, или создать её.

Параметры

array $attributes

Возвращаемое значение

Модель

Модель firstOrCreate(array $attributes, array $joining = [], bool $touch = true)

Получить первую запись связанной модели, соответствующую атрибутам, или создать её.

Параметры

array $attributes
array $joining
bool $touch

Возвращаемое значение

Модель

Модель updateOrCreate(array $attributes, array $values = [], array $joining = [], bool $touch = true)

Создать или обновить запись связанной модели, соответствующей атрибутам, и заполнить её значениями.

Параметры

array $attributes
array $values
array $joining
bool $touch

Возвращаемое значение

Модель

Модель create(array $attributes, array $joining = [], bool $touch = true)

Создать новый экземпляр связанной модели.

Параметры

array $attributes
array $joining
bool $touch

Возвращаемое значение

Модель

array createMany(array $records, array $joinings = [])

Создать массив новых экземпляров связанных моделей.

Параметры

array $records
array $joinings

Возвращаемое значение

array

array syncWithoutDetaching(Коллекция|array $ids)

Синхронизировать промежуточные таблицы со списком ID без отсоединения.

Параметры

Коллекция|array $ids

Возвращаемое значение

array

array sync(Коллекция|array $ids, bool $detaching = true)

Синхронизировать промежуточные таблицы со списком ID или коллекцией моделей.

Параметры

Коллекция|array $ids
bool $detaching

Возвращаемое значение

array

protected array formatSyncList(array $records)

Форматировать список синхронизации, чтобы он был индексирован по ID.

Параметры

array $records

Возвращаемое значение

array

protected array attachNew(array $records, array $current, bool $touch = true)

Прикрепить все ID, которые отсутствуют в текущем массиве.

Параметры

array $records
array $current
bool $touch

Возвращаемое значение

array

int updateExistingPivot(mixed $id, array $attributes, bool $touch = true)

Обновить существующую запись связи на таблице.

Параметры

mixed $id
array $attributes
bool $touch

Возвращаемое значение

int

void attach(mixed $id, array $attributes = [], bool $touch = true)

Прикрепить модель к родительской.

Параметры

mixed $id
array $attributes
bool $touch

Возвращаемое значение

void

protected array createAttachRecords(array $ids, array $attributes)

Создать массив записей для вставки в таблицу связи.

Параметры

array $ids
array $attributes

Возвращаемое значение

array

protected array attacher(int $key, mixed $value, array $attributes, bool $timed)

Создать полную запись прикрепления.

Параметры

int $key
mixed $value
array $attributes
bool $timed

Возвращаемое значение

array

protected array getAttachId(mixed $key, mixed $value, array $attributes)

Получить ID записи прикрепления и дополнительные атрибуты.

Параметры

mixed $key
mixed $value
array $attributes

Возвращаемое значение

array

protected array createAttachRecord(int $id, bool $timed)

Создать новую запись прикрепления.

Параметры

int $id
bool $timed

Возвращаемое значение

array

protected array setTimestampsOnAttach(array $record, bool $exists = false)

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

Параметры

array $record
bool $exists

Возвращаемое значение

array

int detach(mixed $ids = [], bool $touch = true)

Отсоединить модели от отношения.

Параметры

mixed $ids
bool $touch

Возвращаемое значение

int

void touchIfTouching()

Если мы трогаем родительскую модель, то трогаем.

Возвращаемое значение

void

protected bool touchingParent()

Определить, нужно ли трогать родительскую модель при синхронизации.

Возвращаемое значение

bool

protected string guessInverseRelation()

Попытка угадать имя обратного отношения.

Возвращаемое значение

string

protected Builder newPivotQuery()

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

Возвращаемое значение

Builder

Builder newPivotStatement()

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

Возвращаемое значение

Builder

Builder newPivotStatementForId(mixed $id)

Получить новый запрос для связи по заданному ID.

Параметры

mixed $id

Возвращаемое значение

Builder

Pivot newPivot(array $attributes = [], bool $exists = false)

Создать новый экземпляр модели связи.

Параметры

array $attributes
bool $exists

Возвращаемое значение

Pivot

Pivot newExistingPivot(array $attributes = [])

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

Параметры

array $attributes

Возвращаемое значение

Pivot

$this withPivot(array|mixed $columns)

Установить столбцы в таблице связи для извлечения.

Параметры

array|mixed $columns

Возвращаемое значение

$this

BelongsToMany withTimestamps(mixed $createdAt = null, mixed $updatedAt = null)

Указать, что таблица связи имеет временные метки создания и обновления.

Параметры

mixed $createdAt
mixed $updatedAt

Возвращаемое значение

BelongsToMany

string getRelatedFreshUpdate()

Получить имя столбца "updated_at" связанной модели.

Возвращаемое значение

string

string getHasCompareKey()

Получить ключ для сравнения с ключом родительской модели в запросе "has".

Возвращаемое значение

string

string getForeignKey()

Получить полное имя внешнего ключа для отношения.

Возвращаемое значение

string

string getOtherKey()

Получить полное квалифицированное «другое имя ключа» для отношения.

Возвращаемое значение

string

string getTable()

Получить промежуточную таблицу для взаимоотношения.

Возвращаемое значение

string

string getRelationName()

Получить имя взаимоотношения для взаимоотношения.

Возвращаемое значение

string

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.2/Illuminate/Database/Eloquent/Relations/BelongsToMany.html

Spec-Zone.ru

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