← All plugins
MoonShine Changelog
MoonShine Changelog - это пакет для MoonShine, который добавляет функционал отслеживания изменений в моделях, позволяя легко просматривать историю последних модификаций через специальный компонент в админ-панели.
MoonShine version
v2,
v3,
v4.0
MoonShine Changelog
Requirements
Support MoonShine versions
| MoonShine |
ChangeLog |
| 2.0+ |
1.0+ |
| 3.0+ |
2.0+ |
| 4.0+ |
3.0+ |
Installation
composer require moonshine/changelog
composer require moonshine/changelog
composer require moonshine/changelog
composer require moonshine/changelog
composer require moonshine/changelog
php artisan migrate
php artisan migrate
php artisan migrate
php artisan migrate
php artisan migrate
Get started
Add trait HasChangeLog to model
class Post extends Model
{
use HasChangeLog;
}
class Post extends Model
{
use HasChangeLog;
}
class Post extends Model
{
use HasChangeLog;
}
class Post extends Model
{
use HasChangeLog;
}
class Post extends Model
{
use HasChangeLog;
}
Add component to Page
protected function bottomLayer(): array
{
return [
...parent::bottomLayer(),
ChangeLog::make('Changelog', $this->getResource(), \App\MoonShine\Resources\MoonShineUserResource::class)
];
}
protected function bottomLayer(): array
{
return [
...parent::bottomLayer(),
ChangeLog::make('Changelog', $this->getResource(), \App\MoonShine\Resources\MoonShineUserResource::class)
];
}
protected function bottomLayer(): array
{
return [
...parent::bottomLayer(),
ChangeLog::make('Changelog', $this->getResource(), \App\MoonShine\Resources\MoonShineUserResource::class)
];
}
protected function bottomLayer(): array
{
return [
...parent::bottomLayer(),
ChangeLog::make('Changelog', $this->getResource(), \App\MoonShine\Resources\MoonShineUserResource::class)
];
}
protected function bottomLayer(): array
{
return [
...parent::bottomLayer(),
ChangeLog::make('Changelog', $this->getResource(), \App\MoonShine\Resources\MoonShineUserResource::class)
];
}
or in Resource
class PostResource extends ModelResource
{
protected function onLoad(): void
{
$this->getFormPage()->pushToLayer(
Layer::BOTTOM,
ChangeLog::make('Changelog', $this, \App\MoonShine\Resources\MoonShineUserResource::class)
);
}
}
class PostResource extends ModelResource
{
// ...
protected function onLoad(): void
{
$this->getFormPage()->pushToLayer(
Layer::BOTTOM,
ChangeLog::make('Changelog', $this, \App\MoonShine\Resources\MoonShineUserResource::class)
);
}
// ...
}
class PostResource extends ModelResource
{
// ...
protected function onLoad(): void
{
$this->getFormPage()->pushToLayer(
Layer::BOTTOM,
ChangeLog::make('Changelog', $this, \App\MoonShine\Resources\MoonShineUserResource::class)
);
}
// ...
}
class PostResource extends ModelResource
{
// ...
protected function onLoad(): void
{
$this->getFormPage()->pushToLayer(
Layer::BOTTOM,
ChangeLog::make('Changelog', $this, \App\MoonShine\Resources\MoonShineUserResource::class)
);
}
// ...
}
class PostResource extends ModelResource
{
// ...
protected function onLoad(): void
{
$this->getFormPage()->pushToLayer(
Layer::BOTTOM,
ChangeLog::make('Changelog', $this, \App\MoonShine\Resources\MoonShineUserResource::class)
);
}
// ...
}
By default, 5 last changes are displayed.
To change this, use the limit() method
ChangeLog::make('Changelog', $this)->limit(10)
ChangeLog::make('Changelog', $this)->limit(10)
ChangeLog::make('Changelog', $this)->limit(10)
ChangeLog::make('Changelog', $this)->limit(10)
ChangeLog::make('Changelog', $this)->limit(10)
By default, Resource of BelongsTo is MoonShine\Laravel\Resources\MoonShineUserResource
To change this, use the userResource parameter
ChangeLog::make('Changelog', $this, userResource: \App\MoonShine\Resources\MoonShineUserResource::class)->limit(10)
ChangeLog::make('Changelog', $this, userResource: \App\MoonShine\Resources\MoonShineUserResource::class)->limit(10)
ChangeLog::make('Changelog', $this, userResource: \App\MoonShine\Resources\MoonShineUserResource::class)->limit(10)
ChangeLog::make('Changelog', $this, userResource: \App\MoonShine\Resources\MoonShineUserResource::class)->limit(10)
ChangeLog::make('Changelog', $this, userResource: \App\MoonShine\Resources\MoonShineUserResource::class)->limit(10)