comparison src/Models/BaseModel.php @ 7:e6132a1e8e24 default tip

Adding better support for test among other base changes.
author Luka Sitas <sitas.luka.97@gmail.com>
date Thu, 25 Sep 2025 19:58:32 -0400
parents b44434aaa767
children
comparison
equal deleted inserted replaced
6:6ded573b0a61 7:e6132a1e8e24
1 <?php 1 <?php
2 2
3 namespace Wizard\Framework\Models; 3 namespace Wizard\Framework\Models;
4 4
5 use Illuminate\Database\Eloquent\Model;
6 use Wizard\Framework\Database\Builder;
5 use Wizard\Framework\Traits\Filterable; 7 use Wizard\Framework\Traits\Filterable;
6 use Wizard\Framework\Database\Builder;
7 use Illuminate\Database\Eloquent\Model;
8 8
9 class BaseModel extends Model 9 class BaseModel extends Model
10 { 10 {
11 use Filterable; 11 use Filterable;
12 12
13 protected static string $builder = Builder::class; 13 protected static string $builder = Builder::class;
14 14
15 protected $default_relations = []; 15 protected $default_relations = [];
16 16
17 public static function boot(): void 17 public static function boot(): void
18 { 18 {
19 parent::boot(); 19 parent::boot();
20 20
21 self::creating(function ($item) { 21 self::creating(function ($item) {
22 $item->created_by = \Auth::user()?->id ?? ''; 22 if ($user_id = (\Auth::user()->id ?? null)) {
23 $item->updated_by = \Auth::user()?->id ?? ''; 23 $item->created_by = $user_id;
24 $item->updated_by = $user_id;
25 }
24 }); 26 });
25 27
26 self::saving(function ($item) { 28 self::saving(function ($item) {
27 $item->updated_by = \Auth::user()?->id ?? ''; 29 if ($user_id = (\Auth::user()->id ?? null)) {
30 $item->updated_by = $user_id;
31 }
28 }); 32 });
29 } 33 }
30
31 34
32 protected static function load_auxilary_data() 35 protected static function load_auxilary_data()
33 { 36 {
34 $data = []; 37 $data = [];
35 38
57 public static function load_edit() 60 public static function load_edit()
58 { 61 {
59 return static::load_auxilary_data(); 62 return static::load_auxilary_data();
60 } 63 }
61 64
62 public static function named_joins() { 65 public static function named_joins()
63 return []; 66 {
64 } 67 return [];
68 }
65 69
66 /** 70 /**
67 * Retrieve a query builder instance with default relations loaded. 71 * Retrieve a query builder instance with default relations loaded.
68 * 72 *
69 * @return \Illuminate\Database\Eloquent\Builder 73 * @return \Illuminate\Database\Eloquent\Builder