feat: install and implement cascade soft delete to model
This commit is contained in:
parent
741143a407
commit
a80a03931c
@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Dyrynda\Database\Support\CascadeSoftDeletes;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
|
||||
@ -13,10 +14,12 @@
|
||||
|
||||
class Bottle extends Model implements HasMedia
|
||||
{
|
||||
use HasFactory, HasSlug, InteractsWithMedia, SoftDeletes;
|
||||
use CascadeSoftDeletes, HasFactory, HasSlug, InteractsWithMedia, SoftDeletes;
|
||||
|
||||
protected $guarded = ['id'];
|
||||
|
||||
protected $cascadeDeletes = ['outlets'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return [
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Dyrynda\Database\Support\CascadeSoftDeletes;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
|
||||
@ -11,10 +12,12 @@
|
||||
|
||||
class Category extends Model
|
||||
{
|
||||
use HasFactory, HasSlug, SoftDeletes;
|
||||
use CascadeSoftDeletes, HasFactory, HasSlug, SoftDeletes;
|
||||
|
||||
protected $guarded = ['id'];
|
||||
|
||||
protected $cascadeDeletes = ['perfumes'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return [
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
namespace App\Models;
|
||||
|
||||
use App\Enums\OutletStatus;
|
||||
use Dyrynda\Database\Support\CascadeSoftDeletes;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
|
||||
@ -15,10 +16,12 @@
|
||||
|
||||
class Outlet extends Model implements HasMedia
|
||||
{
|
||||
use HasFactory, HasSlug, InteractsWithMedia, SoftDeletes;
|
||||
use CascadeSoftDeletes, HasFactory, HasSlug, InteractsWithMedia, SoftDeletes;
|
||||
|
||||
protected $guarded = ['id'];
|
||||
|
||||
protected $cascadeDeletes = ['openingHours', 'facilities', 'vouchers', 'perfumes', 'products', 'bottles', 'expenses', 'users5'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return [
|
||||
|
||||
@ -14,11 +14,11 @@ class ReferralUsage extends Model
|
||||
|
||||
public function user(): BelongsTo
|
||||
{
|
||||
return $this->belongsTo(User::class);
|
||||
return $this->belongsTo(User::class)->withTrashed();
|
||||
}
|
||||
|
||||
public function referralCode(): BelongsTo
|
||||
{
|
||||
return $this->belongsTo(ReferralCode::class);
|
||||
return $this->belongsTo(ReferralCode::class)->withTrashed();
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Dyrynda\Database\Support\CascadeSoftDeletes;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasOne;
|
||||
@ -9,10 +10,12 @@
|
||||
|
||||
class Tier extends Model
|
||||
{
|
||||
use HasFactory, SoftDeletes;
|
||||
use CascadeSoftDeletes, HasFactory, SoftDeletes;
|
||||
|
||||
protected $guarded = ['id'];
|
||||
|
||||
protected $cascadeDeletes = ['membership'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return [
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
// use Illuminate\Contracts\Auth\MustVerifyEmail;
|
||||
|
||||
use App\Enums\UserStatus;
|
||||
use Dyrynda\Database\Support\CascadeSoftDeletes;
|
||||
use Illuminate\Contracts\Auth\MustVerifyEmail;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
|
||||
@ -16,10 +17,12 @@
|
||||
|
||||
class User extends Authenticatable implements MustVerifyEmail
|
||||
{
|
||||
use HasFactory, HasRoles, Notifiable, SoftDeletes;
|
||||
use CascadeSoftDeletes, HasFactory, HasRoles, Notifiable, SoftDeletes;
|
||||
|
||||
protected $guarded = ['id'];
|
||||
|
||||
protected $cascadeDeletes = ['employee', 'membership', 'referralCode', 'outlets'];
|
||||
|
||||
protected function casts(): array
|
||||
{
|
||||
return [
|
||||
|
||||
@ -11,6 +11,7 @@
|
||||
"require": {
|
||||
"php": "^8.2",
|
||||
"dasundev/livewire-dropzone": "^2.0",
|
||||
"dyrynda/laravel-cascade-soft-deletes": "^4.5",
|
||||
"laravel-lang/lang": "^15.24",
|
||||
"laravel/framework": "^12.0",
|
||||
"laravel/tinker": "^2.10.1",
|
||||
|
||||
49
composer.lock
generated
49
composer.lock
generated
@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "cd1a2ae591771cef0f450d67788b71e8",
|
||||
"content-hash": "bc292bca89df03817c564af417271187",
|
||||
"packages": [
|
||||
{
|
||||
"name": "archtechx/enums",
|
||||
@ -1019,6 +1019,53 @@
|
||||
],
|
||||
"time": "2024-10-09T13:47:03+00:00"
|
||||
},
|
||||
{
|
||||
"name": "dyrynda/laravel-cascade-soft-deletes",
|
||||
"version": "4.5.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/michaeldyrynda/laravel-cascade-soft-deletes.git",
|
||||
"reference": "df5fee4003fc183c8ef46dc9055c1cada4182494"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/michaeldyrynda/laravel-cascade-soft-deletes/zipball/df5fee4003fc183c8ef46dc9055c1cada4182494",
|
||||
"reference": "df5fee4003fc183c8ef46dc9055c1cada4182494",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"illuminate/database": "^11.0 || ^12.0",
|
||||
"illuminate/events": "^11.0 || ^12.0",
|
||||
"php": "^8.2"
|
||||
},
|
||||
"require-dev": {
|
||||
"pestphp/pest": "^2.34 || ^3.7",
|
||||
"pestphp/pest-plugin-drift": "^2.5"
|
||||
},
|
||||
"type": "utility",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Dyrynda\\Database\\Support\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Michael Dyrynda",
|
||||
"email": "michael@dyrynda.com.au",
|
||||
"homepage": "https://dyrynda.com.au"
|
||||
}
|
||||
],
|
||||
"description": "Cascading deletes for Eloquent models that implement soft deletes",
|
||||
"support": {
|
||||
"issues": "https://github.com/michaeldyrynda/laravel-cascade-soft-deletes/issues",
|
||||
"source": "https://github.com/michaeldyrynda/laravel-cascade-soft-deletes/tree/4.5.0"
|
||||
},
|
||||
"time": "2025-02-26T10:22:40+00:00"
|
||||
},
|
||||
{
|
||||
"name": "egulias/email-validator",
|
||||
"version": "4.0.4",
|
||||
|
||||
Loading…
Reference in New Issue
Block a user