• Время чтения ~1 мин
  • 27.01.2025

Laravel Rewind - это мощный и эффективный пакет версий для ваших моделей Eloquent, созданный Джаредом Кэнноном. В этом пакете хранится комбинация частичных различий и полных снимков данных модели. Перемотка автоматически определит кратчайший путь между текущей версией, доступными снимками и вашей целью:

// Previous title: 'Old Title'
$post->title = 'New Title';
$post->save();

// Title goes back to 'Old Title'
Rewind::rewind($post);

$post->title = 'Rewind is Awesome!';
$post->save();

Чтобы включить отслеживание версии на модели, вам просто потребуется Rewindable типаж на модели:

use AvocetShores\LaravelRewind\Concerns\Rewindable;

class Post extends Model
{
   use Rewindable;
}

Основные особенности

  • Перемотка к конкретной версии
  • Перемотка вперед одной или нескольких версий
  • Перемещение модели в определенную версию
  • Безопасность потоков для предотвращения перезаписи модели
  • Исключение атрибутов из версий
  • Создание атрибутов из определенной версии
  • Клонирование модели в определенной версии
  • И многое другое...

Для получения более подробной информации посетите репозиторий laravel-rewind на GitHub и ознакомьтесь с его обширной документацией и примерами. Вы можете установить этот пакет с помощью Composer с помощью следующей команды:

composer require avocet-shores/laravel-rewind
php artisan vendor:publish --provider="AvocetShores\LaravelRewind\LaravelRewindServiceProvider"
php artisan migrate

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

Про мене

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

Об авторе CrazyBoy49z
WORK EXPERIENCE
Контакты
Ukraine, Lutsk
+380979856297

Мы сбиваем «шахеды» каждый день. Каждое сбитие — спасённые жизни. Нам нужна мобильность: бус или прицеп. Каждый донат = ещё одна ночь под защитой.

🚐 Сбор на микроавтобус для моего экипажа, полк 1020 🎯 Цель: 500 000 ₴
🔗 Ссылка на банку 💳 4441 1111 2546 4663