trait InteractsWithPivotTable (View source)
array | toggle(mixed $ids, bool $touch = true) Toggles a model (or models) from the parent. | |
array | syncWithoutDetaching(Collection|array $ids) Sync the intermediate tables with a list of IDs without detaching. | |
array | sync(Collection|Collection|array $ids, bool $detaching = true) Sync the intermediate tables with a list of IDs or collection of models. | |
array | formatRecordsList(array $records) Format the sync / toggle record list so that it is keyed by ID. | |
array | attachNew(array $records, array $current, bool $touch = true) Attach all of the records that aren't in the given current records. | |
int | updateExistingPivot(mixed $id, array $attributes, bool $touch = true) Update an existing pivot record on the table. | |
void | attach(mixed $id, array $attributes = [], bool $touch = true) Attach a model to the parent. | |
array | formatAttachRecords(array $ids, array $attributes) Create an array of records to insert into the pivot table. | |
array | formatAttachRecord(int $key, mixed $value, array $attributes, bool $hasTimestamps) Create a full attachment record payload. | |
array | extractAttachIdAndAttributes(mixed $key, mixed $value, array $attributes) Get the attach record ID and extra attributes. | |
array | baseAttachRecord(int $id, bool $timed) Create a new pivot attachment record. | |
array | addTimestampsToAttachment(array $record, bool $exists = false) Set the creation and update timestamps on an attach record. | |
bool | hasPivotColumn(string $column) Determine whether the given column is defined as a pivot column. | |
int | detach(mixed $ids = null, bool $touch = true) Detach models from the relationship. | |
Pivot | newPivot(array $attributes = [], bool $exists = false) Create a new pivot model instance. | |
Pivot | newExistingPivot(array $attributes = []) Create a new existing pivot model instance. | |
Builder | newPivotStatement() Get a new plain query builder for the pivot table. | |
Builder | newPivotStatementForId(mixed $id) Get a new pivot statement for a given "other" ID. | |
Builder | newPivotQuery() Create a new query builder for the pivot table. | |
$this | withPivot(array|mixed $columns) Set the columns on the pivot table to retrieve. | |
array | parseIds(mixed $value) Get all of the IDs from the given mixed value. | |
array | castKeys(array $keys) Cast the given keys to integers if they are numeric and string otherwise. | |
mixed | castKey(mixed $key) Cast the given key to an integer if it is numeric. | |
array | castAttributes(array $attributes) Cast the given pivot attributes. |
Toggles a model (or models) from the parent.
Each existing model is detached, and non existing ones are attached.
Sync the intermediate tables with a list of IDs without detaching.
Sync the intermediate tables with a list of IDs or collection of models.
Format the sync / toggle record list so that it is keyed by ID.
Attach all of the records that aren't in the given current records.
Update an existing pivot record on the table.
Attach a model to the parent.
Create an array of records to insert into the pivot table.
Create a full attachment record payload.
Get the attach record ID and extra attributes.
Create a new pivot attachment record.
Set the creation and update timestamps on an attach record.
Determine whether the given column is defined as a pivot column.
Detach models from the relationship.
Create a new pivot model instance.
Create a new existing pivot model instance.
Get a new plain query builder for the pivot table.
Get a new pivot statement for a given "other" ID.
Create a new query builder for the pivot table.
Set the columns on the pivot table to retrieve.
Get all of the IDs from the given mixed value.
Cast the given keys to integers if they are numeric and string otherwise.
Cast the given key to an integer if it is numeric.
Cast the given pivot attributes.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.5/Illuminate/Database/Eloquent/Relations/Concerns/InteractsWithPivotTable.html