Модель
класс Модель реализует ArrayAccess, Arrayable, Jsonable, JsonSerializable, QueueableEntity, UrlRoutable (Просмотр исходного кода)
Постоянные значения
| CREATED_AT | Имя столбца "создано в". |
| UPDATED_AT | Имя столбца "обновлено в". |
Свойства
| protected string | $connection | Имя подключения для модели. | |
| protected string | $table | Таблица, связанная с моделью. | |
| protected string | $primaryKey | Первичный ключ модели. | |
| protected string | $keyType | Тип "автоинкрементного" идентификатора. | |
| protected int | $perPage | Количество моделей, возвращаемых для постраничной навигации. | |
| bool | $incrementing | Указывает, являются ли идентификаторы автоинкрементируемыми. | |
| bool | $timestamps | Указывает, должна ли модель иметь отметки времени. | |
| protected array | $attributes | Атрибуты модели. | |
| protected array | $original | Исходное состояние атрибутов модели. | |
| protected array | $relations | Загруженные отношения для модели. | |
| $hidden | Атрибуты, которые должны быть скрыты для массивов. | ||
| protected array | $visible | Атрибуты, которые должны быть видимы в массивах. | |
| protected array | $appends | Обработчики, которые должны быть добавлены к массиву формы модели. | |
| protected array | $fillable | Атрибуты, которые можно массово назначать. | |
| protected array | $guarded | Атрибуты, которые нельзя массово назначать. | |
| protected array | $dates | Атрибуты, которые должны быть изменены в даты. | |
| protected string | $dateFormat | Формат хранения столбцов дат модели. | |
| protected array | $casts | Атрибуты, которые должны быть преобразованы в базовые типы. | |
| protected array | $touches | Отношения, которые должны быть затронуты при сохранении. | |
| protected array | $observables | Экспонированные события наблюдателей. | |
| protected array | $with | Отношения, которые следует загрузить с жадной загрузкой при каждом запросе. | |
| bool | $exists | Указывает, существует ли модель. | |
| bool | $wasRecentlyCreated | Указывает, была ли модель вставлена во время текущего жизненного цикла запроса. | |
| static bool | $snakeAttributes | Указывает, преобразуются ли атрибуты в snake_case для массивов. | |
| static protected ConnectionResolverInterface | $resolver | Экземпляр решателя подключений. | |
| static protected Dispatcher | $dispatcher | Экземпляр диспетчера событий. | |
| static protected array | $booted | Массив запущенных моделей. | |
| static protected array | $globalScopes | Массив глобальных областей модели. | |
| static protected bool | $unguarded | Указывает, включено ли массовое назначение всех атрибутов. | |
| static protected array | $mutatorCache | Кэш мутированных атрибутов для каждого класса. | |
| static array | $manyMethods | Методы отношений "многие ко многим". |
Методы
| void | __construct(array $attributes = []) Создать новый экземпляр модели Eloquent. | |
| void | bootIfNotBooted() Проверить, нужно ли инициализировать модель, и если нужно, сделать это. | |
| static void | boot() Метод "инициализации" модели. | |
| static void | bootTraits() Инициализировать все инициализируемые трейты модели. | |
| static void | clearBootedModels() Очистить список инициализированных моделей, чтобы они были повторно инициализированы. | |
| static mixed | addGlobalScope(Scope|Closure|string $scope, Closure $implementation = null) Зарегистрировать новый глобальный scope для модели. | |
| static bool | hasGlobalScope(Scope|string $scope) Определить, имеет ли модель глобальный scope. | |
| static Scope|Closure|null | getGlobalScope(Scope|string $scope) Получить зарегистрированный глобальный scope модели. | |
| array | getGlobalScopes() Получить глобальные scopes для данного экземпляра класса. | |
| static void | observe(object|string $class, int $priority) Зарегистрировать наблюдателя для модели. | |
| $this | fill(array $attributes) Заполнить модель массивом атрибутов. | |
| $this | forceFill(array $attributes) Заполнить модель массивом атрибутов. Принудительное присвоение значений. | |
| array | fillableFromArray(array $attributes) Получить заполняемые атрибуты из заданного массива. | |
| Model | newInstance(array $attributes = [], bool $exists = false) Создать новый экземпляр заданной модели. | |
| Model | newFromBuilder(array $attributes = [], string|null $connection = null) Создать новый экземпляр модели, которая уже существует. | |
| static Collection | hydrate(array $items, string|null $connection = null) Создать коллекцию моделей из обычных массивов. | |
| static Collection | hydrateRaw(string $query, array $bindings = [], string|null $connection = null) Создать коллекцию моделей из сырого запроса. | |
| static Model | create(array $attributes = []) Сохранить новую модель и вернуть экземпляр. | |
| static Model | forceCreate(array $attributes) Сохранить новую модель и вернуть экземпляр. Разрешить присвоение значений по массе. | |
| static Builder | query() Начать запросы к модели. | |
| static Builder | on(string|null $connection = null) Начать запросы к модели на заданном соединении. | |
| static Builder | onWriteConnection() Начать запросы к модели на соединении записи. | |
| static Collection|Model[] | all(array|mixed $columns = ['*']) Получить все модели из базы данных. | |
| Model|null | fresh(array|string $with = []) Перезагрузить свежий экземпляр модели из базы данных. | |
| $this | load(array|string $relations) Загрузить отношения модели с помощью eager loading. | |
| static Builder|Model | with(array|string $relations) Начать запрос к модели с eager loading. | |
| $this | append(array|string $attributes) Добавить атрибуты к запросу при построении запроса. | |
| HasOne | hasOne(string $related, string $foreignKey = null, string $localKey = null) Определить отношение один-к-одному. | |
| MorphOne | morphOne(string $related, string $name, string $type = null, string $id = null, string $localKey = null) Определить полиморфное отношение один-к-одному. | |
| BelongsTo | belongsTo(string $related, string $foreignKey = null, string $otherKey = null, string $relation = null) Определить обратное отношение один-к-одному или один-ко-многим. | |
| MorphTo | morphTo(string $name = null, string $type = null, string $id = null) Определить полиморфное, обратное отношение один-к-одному или один-ко-многим. | |
| string | getActualClassNameForMorph(string $class) Получить полное имя класса из сокращённого. | |
| HasMany | hasMany(string $related, string $foreignKey = null, string $localKey = null) Определить отношение один-ко-многим. | |
| HasManyThrough | hasManyThrough(string $related, string $through, string|null $firstKey = null, string|null $secondKey = null, string|null $localKey = null) Определить отношение has-many-through. | |
| MorphMany | morphMany(string $related, string $name, string $type = null, string $id = null, string $localKey = null) Определить полиморфное отношение один-ко-многим. | |
| BelongsToMany | belongsToMany(string $related, string $table = null, string $foreignKey = null, string $otherKey = null, string $relation = null) Определить отношение многие-ко-многим. |
| MorphToMany | morphToMany(string $related, string $name, string $table = null, string $foreignKey = null, string $otherKey = null, bool $inverse = false) Определить полиморфное многие-ко-многим отношение. | |
| MorphToMany | morphedByMany(string $related, string $name, string $table = null, string $foreignKey = null, string $otherKey = null) Определить полиморфное обратное многие-ко-многим отношение. | |
| string | getBelongsToManyCaller() Получить имя отношения "belongs to many". | |
| string | joiningTable(string $related) Получить имя таблицы объединения для отношения "многие-ко-многим". | |
| static int | destroy(array|int $ids) Удалить модели для заданных идентификаторов. | |
| bool|null | delete() Удалить модель из базы данных. | |
| bool|null | forceDelete() Выполнить жесткое удаление мягко удаленной модели. | |
| void | performDeleteOnModel() Выполнить фактический запрос удаления для этой модели. | |
| static void | saving(Closure|string $callback, int $priority) Зарегистрировать событие сохранения модели с диспетчером. | |
| static void | saved(Closure|string $callback, int $priority) Зарегистрировать событие сохранения модели с диспетчером. | |
| static void | updating(Closure|string $callback, int $priority) Зарегистрировать событие обновления модели с диспетчером. | |
| static void | updated(Closure|string $callback, int $priority) Зарегистрировать событие обновления модели с диспетчером. | |
| static void | creating(Closure|string $callback, int $priority) Зарегистрировать событие создания модели с диспетчером. | |
| static void | created(Closure|string $callback, int $priority) Зарегистрировать событие создания модели с диспетчером. | |
| static void | deleting(Closure|string $callback, int $priority) Зарегистрировать событие удаления модели с диспетчером. | |
| static void | deleted(Closure|string $callback, int $priority) Зарегистрировать событие удаления модели с диспетчером. | |
| static void | flushEventListeners() Удалить все обработчики событий для модели. | |
| static void | registerModelEvent(string $event, Closure|string $callback, int $priority) Зарегистрировать событие модели с диспетчером. | |
| array | getObservableEvents() Получить имена наблюдаемых событий. | |
| $this | setObservableEvents(array $observables) Установить имена наблюдаемых событий. | |
| void | addObservableEvents(array|mixed $observables) Добавить имя наблюдаемого события. | |
| void | removeObservableEvents(array|mixed $observables) Удалить имя наблюдаемого события. | |
| int | increment(string $column, int $amount = 1, array $extra = []) Увеличить значение столбца на заданное количество. | |
| int | decrement(string $column, int $amount = 1, array $extra = []) Уменьшить значение столбца на заданное количество. | |
| int | incrementOrDecrement(string $column, int $amount, array $extra, string $method) Вызвать метод увеличения или уменьшения значения столбца модели. | |
| void | incrementOrDecrementAttributeValue(string $column, int $amount, string $method) Увеличить/уменьшить значение атрибута и синхронизировать с исходным. | |
| bool | update(array $attributes = [], array $options = []) Обновить модель в базе данных. | |
| bool | push() Сохранить модель и все ее отношения. | |
| bool | save(array $options = []) Сохранить модель в базе данных. | |
| bool | saveOrFail(array $options = []) Сохранить модель в базе данных с использованием транзакции. | |
| void | finishSave(array $options) Завершить обработку при успешном сохранении. | |
| bool | performUpdate(Builder $query) Выполнить операцию обновления модели. | |
| bool | performInsert(Builder $query) Выполнить операцию вставки модели. | |
| void | insertAndSetId(Builder $query, array $attributes) Вставить заданные атрибуты и установить идентификатор модели. | |
| void | touchOwners() Обновить время последнего изменения для связанных моделей. | |
| bool | touches(string $relation) Определить, касается ли модель данное отношение. | |
| mixed | fireModelEvent(string $event, bool $halt = true) Вызвать заданное событие для модели. | |
| Builder | setKeysForSaveQuery(Builder $query) Установить ключи для запроса сохранения. | |
| mixed | getKeyForSaveQuery() Получить значение первичного ключа для запроса сохранения. | |
| bool | touch() Обновить метку изменения модели. | |
| void | updateTimestamps() Обновить метки создания и изменения. | |
| $this | setCreatedAt(mixed $value) Установить значение атрибута "created at". | |
| $this | setUpdatedAt(mixed $value) Установить значение атрибута "updated at". |
| строка | getCreatedAtColumn() Получить имя столбца «создано». | |
| строка | getUpdatedAtColumn() Получить имя столбца «обновлено». | |
| Carbon | freshTimestamp() Получить свежий отметку времени для модели. | |
| строка | freshTimestampString() Получить свежую отметку времени для модели. | |
| Builder | newQuery() Получить новый конструктор запроса для таблицы модели. | |
| Builder | newQueryWithoutScope(Scope|строка $scope) Получить новый экземпляр запроса без указанного скоупа. | |
| Builder| Model | newQueryWithoutScopes() Получить новый конструктор запроса, не имеющий глобальных скоупов. | |
| Builder| Model | newEloquentBuilder(Builder $query) Создать новый конструктор запроса Eloquent для модели. | |
| Builder | newBaseQueryBuilder() Получить новый экземпляр конструктора запросов для подключения. | |
| Collection | newCollection(array $models = []) Создать новый экземпляр коллекции Eloquent. | |
| Pivot | newPivot(Model $parent, array $attributes, string $table, bool $exists) Создать новый экземпляр модели Pivot. | |
| строка | getTable() Получить таблицу, связанную с моделью. | |
| $this | setTable(строка $table) Установить таблицу, связанную с моделью. | |
| смешанный тип | getKey() Получить значение первичного ключа модели. | |
| смешанный тип | getQueueableId() Получить идентификатор очереди для сущности. | |
| строка | getKeyName() Получить первичный ключ для модели. | |
| $this | setKeyName(строка $key) Установить первичный ключ для модели. | |
| строка | getQualifiedKeyName() Получить имя квалифицированного первичного ключа. | |
| строка | getKeyType() Получить тип автоинкрементного ключа. | |
| смешанный тип | getRouteKey() Получить значение ключа маршрута модели. | |
| строка | getRouteKeyName() Получить ключ маршрута для модели. | |
| bool | usesTimestamps() Определить, использует ли модель отметки времени. | |
| массив | getMorphs(строка $name, строка $type, строка $id) Получить столбцы полиморфных отношений. | |
| строка | getMorphClass() Получить имя класса для полиморфных отношений. | |
| целое число | getPerPage() Получить количество моделей, возвращаемых на страницу. | |
| $this | setPerPage(целое число $perPage) Установить количество моделей, возвращаемых на страницу. | |
| строка | getForeignKey() Получить имя внешнего ключа по умолчанию для модели. | |
| массив | getHidden() Получить скрытые атрибуты для модели. | |
| $this | setHidden(массив $hidden) Установить скрытые атрибуты для модели. | |
| void | addHidden(массив|строка|null $attributes = null) Добавить скрытые атрибуты для модели. | |
| $this | makeVisible(массив|строка $attributes) Сделать указанные, обычно скрытые, атрибуты видимыми. | |
| $this | makeHidden(массив|строка $attributes) Сделать указанные, обычно видимые, атрибуты скрытыми. | |
| массив | getVisible() Получить видимые атрибуты для модели. | |
| $this | setVisible(массив $visible) Установить видимые атрибуты для модели. | |
| void | addVisible(массив|строка|null $attributes = null) Добавить видимые атрибуты для модели. | |
| $this | setAppends(массив $appends) Установить аксессоры для добавления к массивам моделей. | |
| массив | getFillable() Получить заполняемые атрибуты для модели. | |
| $this | fillable(массив $fillable) Установить заполняемые атрибуты для модели. | |
| массив | getGuarded() Получить защищенные атрибуты для модели. | |
| $this | guard(массив $guarded) Установить защищенные атрибуты для модели. | |
| static void | unguard(bool $state = true) Отключить все ограничения массового назначения. | |
| static void | reguard() Включить ограничения массового назначения. | |
| static bool | isUnguarded() Определить, находится ли текущее состояние в "unguarded" режиме. | |
| static смешанный тип | unguarded(вызываемый объект $callback) Выполнить заданный вызываемый объект, будучи в unguarded режиме. | |
| bool | isFillable(строка $key) Определить, может ли указанный атрибут быть присвоен массово. | |
| bool | isGuarded(строка $key) Определить, является ли данный ключ защищенным. | |
| bool | totallyGuarded() Определить, является ли модель полностью защищенной. | |
| строка | removeTableFromKey(строка $key) Удалить имя таблицы из данного ключа. |
| массив | getTouchedRelations() Получить связи, которые затронуты при сохранении. | |
| $this | setTouchedRelations(массив $touches) Установить связи, которые затронуты при сохранении. | |
| bool | getIncrementing() Получить значение, указывающее, являются ли идентификаторы нарастающими. | |
| $this | setIncrementing(bool $value) Установить, являются ли идентификаторы нарастающими. | |
| строка | toJson(int $options) Преобразовать экземпляр модели в JSON. | |
| массив | jsonSerialize() Преобразовать объект в сериализуемый JSON. | |
| массив | toArray() Преобразовать экземпляр модели в массив. | |
| массив | attributesToArray() Преобразовать атрибуты модели в массив. | |
| массив | getArrayableAttributes() Получить массив атрибутов всех массивообразуемых атрибутов. | |
| массив | getArrayableAppends() Получить все значения, подлежащие добавлению, которые являются массивообразуемыми. | |
| массив | relationsToArray() Получить связи модели в формате массива. | |
| массив | getArrayableRelations() Получить массив атрибутов всех массивообразуемых связей. | |
| массив | getArrayableItems(массив $values) Получить массив атрибутов всех массивообразуемых значений. | |
| смешанный | getAttribute(строка $key) Получить атрибут из модели. | |
| смешанный | getAttributeValue(строка $key) Получить простой атрибут (не связь). | |
| смешанный | getRelationValue(строка $key) Получить связь. | |
| смешанный | getAttributeFromArray(строка $key) Получить атрибут из массива $attributes. | |
| смешанный | getRelationshipFromMethod(строка $method) Получить значение связи из метода. | |
| bool | hasGetMutator(строка $key) Определить, существует ли мутатор get для атрибута. | |
| смешанный | mutateAttribute(строка $key, смешанный $value) Получить значение атрибута, используя его мутатор. | |
| смешанный | mutateAttributeForArray(строка $key, смешанный $value) Получить значение атрибута, используя его мутатор для преобразования в массив. | |
| bool | hasCast(строка $key, массив|строка|null $types = null) Определить, должен ли атрибут быть преобразован в базовый тип. | |
| массив | getCasts() Получить массив преобразований. | |
| bool | isDateCastable(строка $key) Определить, можно ли преобразовать значение в дату/DateTime для входных данных. | |
| bool | isJsonCastable(строка $key) Определить, можно ли преобразовать значение в JSON для входных данных. | |
| строка | getCastType(строка $key) Получить тип преобразования для атрибута модели. | |
| смешанный | castAttribute(строка $key, смешанный $value) Преобразовать атрибут в базовый тип PHP. | |
| $this | setAttribute(строка $key, смешанный $value) Установить заданный атрибут в модели. | |
| $this | fillJsonAttribute(строка $key, смешанный $value) Установить заданный JSON-атрибут в модели. | |
| bool | hasSetMutator(строка $key) Определить, существует ли мутатор set для атрибута. | |
| массив | getDates() Получить атрибуты, которые должны быть преобразованы в даты. | |
| строка | fromDateTime(DateTime|int $value) Преобразовать DateTime в сохраняемую строку. | |
| Carbon | asDateTime(смешанный $value) Возвратить метку времени как объект DateTime. | |
| int | asTimeStamp(смешанный $value) Возвратить метку времени как метку Unix-времени. | |
| строка | serializeDate(DateTimeInterface $date) Подготовить дату для сериализации в массив/JSON. | |
| строка | getDateFormat() Получить формат для дат, хранящихся в базе данных. | |
| $this | setDateFormat(строка $format) Установить формат даты, используемый моделью. | |
| строка | asJson(смешанный $value) Закодировать заданное значение как JSON. | |
| смешанный | fromJson(строка $value, bool $asObject = false) Декодировать заданный JSON обратно в массив или объект. | |
| Модель | replicate(массив $except = null) Клонировать модель в новый, не существующий экземпляр. | |
| bool | is(Модель $model) Определить, имеют ли две модели одинаковый идентификатор и принадлежат ли одной и той же таблице. | |
| массив | getAttributes() Получить все текущие атрибуты модели. | |
| $this | setRawAttributes(массив $attributes, bool $sync = false) Установить массив атрибутов модели. Проверка не выполняется. | |
| смешанный|массив | getOriginal(строка|null $key = null, смешанный $default = null) Получить исходные значения атрибутов модели. | |
| $this | syncOriginal() Синхронизировать исходные атрибуты с текущими. | |
| $this | syncOriginalAttribute(строка $attribute) Синхронизировать один исходный атрибут со своим текущим значением. | |
| bool | isDirty(массив|строка|null $attributes = null) Определить, была ли модель или заданный атрибут(ы) изменены. |
| bool | isClean(array|string|null $attributes = null) Определить, остались ли модель или заданные атрибут(ы) неизменными. | |
| array | getDirty() Получить атрибуты, которые были изменены с момента последней синхронизации. | |
| bool | originalIsNumericallyEquivalent(string $key) Определить, являются ли новые и старые значения для данного ключа численно эквивалентными. | |
| array | getRelations() Получить все загруженные отношения для экземпляра. | |
| mixed | getRelation(string $relation) Получить указанное отношение. | |
| bool | relationLoaded(string $key) Определить, загружено ли данное отношение. | |
| $this | setRelation(string $relation, mixed $value) Установить конкретное отношение в модели. | |
| $this | setRelations(array $relations) Установить массив всех отношений в модели. | |
| Connection | getConnection() Получить подключение к базе данных для модели. | |
| string | getConnectionName() Получить текущее имя подключения для модели. | |
| $this | setConnection(string $name) Установить подключение, связанное с моделью. | |
| static Connection | resolveConnection(string|null $connection = null) Разрешить экземпляр подключения. | |
| static ConnectionResolverInterface | getConnectionResolver() Получить экземпляр разборщика подключений. | |
| static void | setConnectionResolver(ConnectionResolverInterface $resolver) Установить экземпляр разборщика подключений. | |
| static void | unsetConnectionResolver() Удалить разборщик подключений для моделей. | |
| static Dispatcher | getEventDispatcher() Получить экземпляр диспетчера событий. | |
| static void | setEventDispatcher(Dispatcher $dispatcher) Установить экземпляр диспетчера событий. | |
| static void | unsetEventDispatcher() Удалить диспетчер событий для моделей. | |
| array | getMutatedAttributes() Получить изменённые атрибуты для данного экземпляра. | |
| static void | cacheMutatedAttributes(string $class) Извлечь и кэшировать все изменённые атрибуты класса. | |
| mixed | __get(string $key) Динамически получить атрибуты модели. | |
| void | __set(string $key, mixed $value) Динамически установить атрибуты модели. | |
| bool | offsetExists(mixed $offset) Определить, существует ли заданный атрибут. | |
| mixed | offsetGet(mixed $offset) Получить значение для заданного смещения. | |
| void | offsetSet(mixed $offset, mixed $value) Установить значение для заданного смещения. | |
| void | offsetUnset(mixed $offset) Удалить значение для заданного смещения. | |
| bool | __isset(string $key) Определить, существует ли атрибут или отношение в модели. | |
| void | __unset(string $key) Удалить атрибут модели. | |
| mixed | __call(string $method, array $parameters) Обработка вызовов динамических методов в модели. | |
| static mixed | __callStatic(string $method, array $parameters) Обработка вызовов статических динамических методов. | |
| string | __toString() Преобразовать модель в строковое представление. | |
| void | __wakeup() При десериализации модели проверить, нужно ли её загрузить. |
Подробности
void __construct(array $attributes = [])
Создать новый экземпляр модели Eloquent.
protected void bootIfNotBooted()
Проверить, нужно ли загружать модель, и если да, то сделать это.
static protected void boot()
Метод "загрузки" модели.
static protected void bootTraits()
Загрузить все загружаемые трейты модели.
static void clearBootedModels()
Очистить список загруженных моделей, чтобы они были перезагружены.
static mixed addGlobalScope(Scope|Closure|string $scope, Closure $implementation = null)
Зарегистрировать новый глобальный scope модели.
static bool hasGlobalScope(Scope|string $scope)
Определить, имеет ли модель глобальный scope.
static Scope|Closure|null getGlobalScope(Scope|string $scope)
Получить глобальный scope, зарегистрированный с моделью.
array getGlobalScopes()
Получить глобальные scopes для этого экземпляра класса.
static void observe(object|string $class, int $priority)
Зарегистрировать наблюдателя с моделью.
$this fill(array $attributes)
Заполнить модель массивом атрибутов.
$this forceFill(array $attributes)
Заполнить модель массивом атрибутов. Принудительно разрешить массовое назначение.
protected array fillableFromArray(array $attributes)
Получить атрибуты для заполнения из заданного массива.
Модель newInstance(array $attributes = [], bool $exists = false)
Создать новый экземпляр заданной модели.
Модель newFromBuilder(array $attributes = [], string|null $connection = null)
Создать новый экземпляр модели, которая уже существует.
static Коллекция hydrate(array $items, string|null $connection = null)
Создать коллекцию моделей из обычных массивов.
static Коллекция hydrateRaw(string $query, array $bindings = [], string|null $connection = null)
Создать коллекцию моделей из сырого запроса.
static Модель create(array $attributes = [])
Сохранить новую модель и вернуть экземпляр.
static Модель forceCreate(array $attributes)
Сохранить новую модель и вернуть экземпляр. Разрешить массовое назначение.
static Билдер query()
Начать запрос к модели.
static Билдер on(string|null $connection = null)
Начать запрос к модели на заданном соединении.
static Билдер onWriteConnection()
Начать запрос к модели на соединении записи.
Модель|null fresh(array|string $with = [])
Перезагрузить свежий экземпляр модели из базы данных.
$this load(array|string $relations)
Загрузка отношений модели с отложенной загрузкой.
$this append(array|string $attributes)
Добавление атрибутов к запросу при построении запроса.
HasOne hasOne(string $related, string $foreignKey = null, string $localKey = null)
Определение одно-к-одному отношения.
MorphOne morphOne(string $related, string $name, string $type = null, string $id = null, string $localKey = null)
Определение полиморфного одно-к-одному отношения.
BelongsTo belongsTo(string $related, string $foreignKey = null, string $otherKey = null, string $relation = null)
Определение обратного одно-к-одному или множественному отношению.
MorphTo morphTo(string $name = null, string $type = null, string $id = null)
Определение полиморфного обратного одно-к-одному или множественному отношению.
string getActualClassNameForMorph(string $class)
Получить полное имя класса по его псевдониму.
HasMany hasMany(string $related, string $foreignKey = null, string $localKey = null)
Определение отношения один-ко-многим.
HasManyThrough hasManyThrough(string $related, string $through, string|null $firstKey = null, string|null $secondKey = null, string|null $localKey = null)
Определение отношения has-many-through.
MorphMany morphMany(string $related, string $name, string $type = null, string $id = null, string $localKey = null)
Определение полиморфного отношения один-ко-многим.
BelongsToMany belongsToMany(string $related, string $table = null, string $foreignKey = null, string $otherKey = null, string $relation = null)
Определение отношения многие-ко-многим.
MorphToMany morphToMany(string $related, string $name, string $table = null, string $foreignKey = null, string $otherKey = null, bool $inverse = false)
Определение полиморфного отношения многие-ко-многим.
MorphToMany morphedByMany(string $related, string $name, string $table = null, string $foreignKey = null, string $otherKey = null)
Определение полиморфного обратного отношения многие-ко-многим.
protected string getBelongsToManyCaller()
Получить имя отношения belongs to many.
string joiningTable(string $related)
Получить имя таблицы соединения для отношения many-to-many.
static int destroy(array|int $ids)
Удалить модели для заданных идентификаторов.
bool|null delete()
Удалить модель из базы данных.
bool|null forceDelete()
Выполнить жесткое удаление мягко удаленной модели.
Этот метод защищает разработчиков от выполнения forceDelete, когда отсутствует соответствующий трейт.
protected void performDeleteOnModel()
Выполнить фактический запрос на удаление для этого экземпляра модели.
static void saving(Closure|string $callback, int $priority)
Зарегистрировать событие сохранения модели в диспетчере.
static void saved(Closure|string $callback, int $priority)
Зарегистрировать событие сохранения модели в диспетчере.
static void updating(Closure|string $callback, int $priority)
Зарегистрировать событие обновления модели в диспетчере.
static void updated(Closure|string $callback, int $priority)
Зарегистрировать событие обновления модели в диспетчере.
static void creating(Closure|string $callback, int $priority)
Зарегистрировать событие создания модели в диспетчере.
static void created(Closure|string $callback, int $priority)
Зарегистрировать событие создания модели в диспетчере.
static void deleting(Closure|string $callback, int $priority)
Зарегистрировать событие удаления модели в диспетчере.
static void deleted(Closure|string $callback, int $priority)
Зарегистрировать событие удаления модели в диспетчере.
static void flushEventListeners()
Удалить все слушатели событий для модели.
static protected void registerModelEvent(string $event, Closure|string $callback, int $priority)
Зарегистрировать событие модели в диспетчере.
array getObservableEvents()
Получить имена наблюдаемых событий.
$this setObservableEvents(array $observables)
Установить имена наблюдаемых событий.
void addObservableEvents(array|mixed $observables)
Добавить имя наблюдаемого события.
void removeObservableEvents(array|mixed $observables)
Удалить имя наблюдаемого события.
protected int increment(string $column, int $amount = 1, array $extra = [])
Увеличить значение столбца на заданную величину.
protected int decrement(string $column, int $amount = 1, array $extra = [])
Уменьшить значение столбца на заданную величину.
protected int incrementOrDecrement(string $column, int $amount, array $extra, string $method)
Вызвать метод увеличения или уменьшения для модели.
protected void incrementOrDecrementAttributeValue(string $column, int $amount, string $method)
Увеличить/уменьшить внутреннее значение атрибута и синхронизировать с оригиналом.
bool update(array $attributes = [], array $options = [])
Обновить модель в базе данных.
bool push()
Сохранить модель и все её отношения.
bool save(array $options = [])
Сохранить модель в базе данных.
bool saveOrFail(array $options = [])
Сохранить модель в базе данных с использованием транзакции.
protected void finishSave(array $options)
Завершить обработку успешной операции сохранения.
protected bool performUpdate(Builder $query)
Выполнить операцию обновления модели.
protected bool performInsert(Builder $query)
Выполнить операцию вставки модели.
protected void insertAndSetId(Builder $query, array $attributes)
Вставить заданные атрибуты и установить ID модели.
void touchOwners()
Обновить метки времени связанных отношений модели.
bool touches(string $relation)
Определить, касается ли модель данного отношения.
protected mixed fireModelEvent(string $event, bool $halt = true)
Сгенерировать событие для модели.
protected mixed getKeyForSaveQuery()
Получить значение первичного ключа для запроса сохранения.
bool touch()
Обновить метку времени последнего изменения модели.
protected void updateTimestamps()
Обновить метки времени создания и изменения.
$this setCreatedAt(mixed $value)
Установить значение атрибута "created at".
$this setUpdatedAt(mixed $value)
Установить значение атрибута "updated at".
string getCreatedAtColumn()
Получить имя столбца "created at".
string getUpdatedAtColumn()
Получить имя столбца "updated at".
Carbon freshTimestamp()
Получить свежую метку времени для модели.
string freshTimestampString()
Получить свежую метку времени для модели.
Builder newQuery()
Получить новый конструктор запросов для таблицы модели.
Builder newQueryWithoutScope(Scope|string $scope)
Получить новый экземпляр запроса без заданного объёма.
Builder|Model newQueryWithoutScopes()
Получить новый конструктор запросов, не имеющий глобальных объёмов.
Builder|Model newEloquentBuilder(Builder $query)
Создать новый конструктор запросов Eloquent для модели.
protected Builder newBaseQueryBuilder()
Получить новый экземпляр конструктора запросов для подключения.
Collection newCollection(array $models = [])
Создать новый экземпляр коллекции Eloquent.
Pivot newPivot(Model $parent, array $attributes, string $table, bool $exists)
Создать новый экземпляр модели Pivot.
string getTable()
Получить таблицу, связанную с моделью.
$this setTable(string $table)
Установить таблицу, связанную с моделью.
mixed getKey()
Получить значение первичного ключа модели.
mixed getQueueableId()
Получить идентификатор очереди для сущности.
string getKeyName()
Получить первичный ключ для модели.
$this setKeyName(string $key)
Установить первичный ключ для модели.
string getQualifiedKeyName()
Получить квалифицированное имя ключа таблицы.
string getKeyType()
Получить тип автоинкрементируемого ключа.
mixed getRouteKey()
Получить значение ключа маршрута модели.
string getRouteKeyName()
Получить ключ маршрута для модели.
bool usesTimestamps()
Определить, использует ли модель метки времени.
protected array getMorphs(string $name, string $type, string $id)
Получить столбцы полиморфных отношений.
string getMorphClass()
Получить имя класса для полиморфных отношений.
int getPerPage()
Получить количество моделей, возвращаемых на страницу.
$this setPerPage(int $perPage)
Установить количество моделей, возвращаемых на страницу.
string getForeignKey()
Получить имя полей внешнего ключа для модели по умолчанию.
array getHidden()
Получить скрытые атрибуты для модели.
$this setHidden(array $hidden)
Установить скрытые атрибуты для модели.
void addHidden(array|string|null $attributes = null)
Добавить скрытые атрибуты для модели.
$this makeVisible(array|string $attributes)
Сделать указанные, обычно скрытые, атрибуты видимыми.
$this makeHidden(array|string $attributes)
Сделать указанные, обычно видимые, атрибуты скрытыми.
array getVisible()
Получить видимые атрибуты для модели.
$this setVisible(array $visible)
Установить видимые атрибуты для модели.
void addVisible(array|string|null $attributes = null)
Добавить видимые атрибуты для модели.
$this setAppends(array $appends)
Установить аксессоры для добавления в массивы модели.
array getFillable()
Получить заполняемые атрибуты для модели.
$this fillable(array $fillable)
Установить заполняемые атрибуты для модели.
array getGuarded()
Получить защищенные атрибуты для модели.
$this guard(array $guarded)
Установить защищенные атрибуты для модели.
static void unguard(bool $state = true)
Отключить все ограничения массового присваивания.
static void reguard()
Включить ограничения массового присваивания.
static bool isUnguarded()
Определить, является ли текущее состояние "без защиты".
static mixed unguarded(callable $callback)
Выполнить заданную вызываемую функцию без защиты.
bool isFillable(string $key)
Определить, может ли указанный атрибут быть присвоен массово.
bool isGuarded(string $key)
Определить, является ли данный ключ защищенным.
bool totallyGuarded()
Определить, является ли модель полностью защищенной.
protected string removeTableFromKey(string $key)
Удалить имя таблицы из заданного ключа.
array getTouchedRelations()
Получить отношения, которые изменяются при сохранении.
$this setTouchedRelations(array $touches)
Установить отношения, которые изменяются при сохранении.
bool getIncrementing()
Получить значение, указывающее, увеличиваются ли идентификаторы.
$this setIncrementing(bool $value)
Установить, увеличиваются ли идентификаторы.
string toJson(int $options)
Преобразовать экземпляр модели в JSON.
array jsonSerialize()
Преобразовать объект в сериализуемый в JSON.
array toArray()
Преобразовать экземпляр модели в массив.
array attributesToArray()
Преобразовать атрибуты модели в массив.
protected array getArrayableAttributes()
Получить массив атрибутов, все из которых могут быть преобразованы в массив.
protected array getArrayableAppends()
Получить все присоединяемые значения, которые могут быть преобразованы в массив.
array relationsToArray()
Получить отношения модели в формате массива.
protected array getArrayableRelations()
Получить массив всех отношений, которые могут быть преобразованы в массив.
protected array getArrayableItems(array $values)
Получить массив атрибутов, все из которых могут быть преобразованы в массив.
mixed getAttribute(string $key)
Получить атрибут из модели.
mixed getAttributeValue(string $key)
Получить простой атрибут (не отношение).
mixed getRelationValue(string $key)
Получить отношение.
protected mixed getAttributeFromArray(string $key)
Получить атрибут из массива $attributes.
protected mixed getRelationshipFromMethod(string $method)
Получить значение отношения из метода.
bool hasGetMutator(string $key)
Определить, существует ли мутатор get для атрибута.
protected mixed mutateAttribute(string $key, mixed $value)
Получить значение атрибута с помощью его мутатора.
protected mixed mutateAttributeForArray(string $key, mixed $value)
Получить значение атрибута с помощью его мутатора для преобразования в массив.
bool hasCast(string $key, array|string|null $types = null)
Определить, должен ли атрибут быть преобразован в родной тип.
array getCasts()
Получить массив преобразуемых типов.
protected bool isDateCastable(string $key)
Определить, может ли значение быть преобразованно в дату/DateTime для входящих манипуляций.
protected bool isJsonCastable(string $key)
Определить, может ли значение быть преобразованно в JSON для входящих манипуляций.
protected string getCastType(string $key)
Получить тип преобразования для атрибута модели.
protected mixed castAttribute(string $key, mixed $value)
Преобразование атрибута к собственному типу PHP.
$this setAttribute(string $key, mixed $value)
Устанавливает заданный атрибут модели.
$this fillJsonAttribute(string $key, mixed $value)
Устанавливает заданный атрибут JSON в модели.
bool hasSetMutator(string $key)
Определяет, существует ли мутатор set для атрибута.
array getDates()
Получить атрибуты, которые должны быть преобразованы в даты.
string fromDateTime(DateTime|int $value)
Преобразовать DateTime в хранимую строку.
protected Carbon asDateTime(mixed $value)
Возвращает метку времени как объект DateTime.
protected int asTimeStamp(mixed $value)
Возвращает метку времени как Unix-временную метку.
protected string serializeDate(DateTimeInterface $date)
Подготовить дату для сериализации в массив/JSON.
protected string getDateFormat()
Получить формат дат, хранящихся в базе данных.
$this setDateFormat(string $format)
Установить формат даты, используемый моделью.
protected string asJson(mixed $value)
Кодировать данное значение как JSON.
mixed fromJson(string $value, bool $asObject = false)
Декодировать заданный JSON обратно в массив или объект.
Модель replicate(array $except = null)
Создать клон модели в новый, не существующий экземпляр.
bool is(Модель $model)
Определить, имеют ли две модели одинаковый ID и принадлежат одной и той же таблице.
array getAttributes()
Получить все текущие атрибуты модели.
$this setRawAttributes(array $attributes, bool $sync = false)
Установить массив атрибутов модели. Проверка не выполняется.
mixed|array getOriginal(string|null $key = null, mixed $default = null)
Получить исходные значения атрибутов модели.
$this syncOriginal()
Синхронизировать исходные атрибуты с текущими.
$this syncOriginalAttribute(string $attribute)
Синхронизировать один исходный атрибут со своим текущим значением.
bool isDirty(array|string|null $attributes = null)
Определить, была ли изменена модель или заданный(ые) атрибут(ы).
bool isClean(array|string|null $attributes = null)
Определить, остались ли модель или заданный(ые) атрибут(ы) прежними.
массив getDirty()
Получить атрибуты, которые были изменены с момента последней синхронизации.
protected bool originalIsNumericallyEquivalent(string $key)
Определить, являются ли новые и старые значения для данного ключа численно эквивалентными.
массив getRelations()
Получить все загруженные отношения для экземпляра.
смешанный тип getRelation(string $relation)
Получить указанное отношение.
bool relationLoaded(string $key)
Определить, загружено ли данное отношение.
$this setRelation(string $relation, mixed $value)
Установить конкретное отношение в модели.
$this setRelations(array $relations)
Установить весь массив отношений в модели.
Подключение getConnection()
Получить подключение к базе данных для модели.
строка getConnectionName()
Получить текущее имя подключения для модели.
$this setConnection(string $name)
Установить подключение, связанное с моделью.
static Подключение resolveConnection(string|null $connection = null)
Разрешить экземпляр подключения.
static Интерфейс разрешения подключений getConnectionResolver()
Получить экземпляр разрешения подключения.
static void setConnectionResolver(Интерфейс разрешения подключений $resolver)
Установить экземпляр разрешения подключения.
static void unsetConnectionResolver()
Удалить разрешение подключения для моделей.
static Диспечер событий getEventDispatcher()
Получить экземпляр диспечера событий.
static void setEventDispatcher(Диспечер событий $dispatcher)
Установить экземпляр диспечера событий.
static void unsetEventDispatcher()
Удалить диспечер событий для моделей.
массив getMutatedAttributes()
Получить измененные атрибуты для данного экземпляра.
static void cacheMutatedAttributes(string $class)
Извлечь и кэшировать все измененные атрибуты класса.
смешанный тип __get(string $key)
Динамически получить атрибуты модели.
void __set(string $key, mixed $value)
Динамически установить атрибуты модели.
bool offsetExists(mixed $offset)
Определить, существует ли указанный атрибут.
смешанный тип offsetGet(mixed $offset)
Получить значение для заданного смещения.
void offsetSet(mixed $offset, mixed $value)
Установить значение для заданного смещения.
void offsetUnset(mixed $offset)
Удалить значение для заданного смещения.
bool __isset(string $key)
Определить, существует ли атрибут или отношение в модели.
void __unset(string $key)
Удалить атрибут в модели.
mixed __call(string $method, array $parameters)
Обработка динамических вызовов методов в модели.
static mixed __callStatic(string $method, array $parameters)
Обработка динамических статических вызовов методов в модели.
string __toString()
Преобразование модели в строковое представление.
void __wakeup()
При десериализации модели проверяется, нужно ли ее запускать.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.3/Illuminate/Database/Eloquent/Model.html