annotate src/Generator/Model/stubs/model.stub @ 45:c7fd31303024 default tip

merging down to default
author Luka Sitas <sitas.luka.97@gmail.com>
date Thu, 12 Nov 2026 21:19:53 -0500
parents 50ca202284d5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
a20439b1c9d3 Added Model generator and other updates.
luka
parents:
diff changeset
1 <?php
a20439b1c9d3 Added Model generator and other updates.
luka
parents:
diff changeset
2
a20439b1c9d3 Added Model generator and other updates.
luka
parents:
diff changeset
3 namespace {{ namespace }};
a20439b1c9d3 Added Model generator and other updates.
luka
parents:
diff changeset
4
40
2cf26b593f4a better support for different column types
Luka Sitas <sitas.luka.97@gmail.com>
parents: 36
diff changeset
5 use Illuminate\Database\Eloquent\Factories\HasFactory;
5
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
6 use Illuminate\Database\Eloquent\SoftDeletes;
31
8dd668020310 started converting too bootstrap, also better support for casts
Luka Sitas <sitas.luka.97@gmail.com>
parents: 29
diff changeset
7 use Wizard\Framework\Models\BaseModel;
4
a20439b1c9d3 Added Model generator and other updates.
luka
parents:
diff changeset
8
29
010ace248d14 Added support for filters, not fully there with relations or anything like that but it's a start
Luka Sitas <sitas.luka.97@gmail.com>
parents: 28
diff changeset
9 class {{ class }} extends BaseModel
4
a20439b1c9d3 Added Model generator and other updates.
luka
parents:
diff changeset
10 {
36
76584181267a Got factories working in a basic way, not sure how complex tables will handle it though
Luka Sitas <sitas.luka.97@gmail.com>
parents: 31
diff changeset
11 /** @use HasFactory<\Database\Factories\{{ class }}Factory> */
40
2cf26b593f4a better support for different column types
Luka Sitas <sitas.luka.97@gmail.com>
parents: 36
diff changeset
12 use HasFactory;
5
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
13 use SoftDeletes;
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
14
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
15 /**
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
16 * The table associated with the model.
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
17 *
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
18 * @var string
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
19 */
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
20 protected $table = '{{ tableName }}';
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
21
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
22 /**
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
23 * The model's default values for attributes.
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
24 *
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
25 * @var array
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
26 */
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
27 protected $attributes = [
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
28 # {{ atributeInsertPoint }}
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
29 ];
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
30
31
8dd668020310 started converting too bootstrap, also better support for casts
Luka Sitas <sitas.luka.97@gmail.com>
parents: 29
diff changeset
31 protected $casts = [
8dd668020310 started converting too bootstrap, also better support for casts
Luka Sitas <sitas.luka.97@gmail.com>
parents: 29
diff changeset
32 # {{ castInsertPoint }}
8dd668020310 started converting too bootstrap, also better support for casts
Luka Sitas <sitas.luka.97@gmail.com>
parents: 29
diff changeset
33 ];
8dd668020310 started converting too bootstrap, also better support for casts
Luka Sitas <sitas.luka.97@gmail.com>
parents: 29
diff changeset
34
26
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
35 protected $fillable = [
23
827efbf4d73c Huge changes to the relationships for models and more complex
Luka Sitas <sitas.luka.97@gmail.com>
parents: 11
diff changeset
36 # {{ fillableInsertPoint }}
827efbf4d73c Huge changes to the relationships for models and more complex
Luka Sitas <sitas.luka.97@gmail.com>
parents: 11
diff changeset
37 ];
827efbf4d73c Huge changes to the relationships for models and more complex
Luka Sitas <sitas.luka.97@gmail.com>
parents: 11
diff changeset
38
26
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
39 protected $default_relations = [
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
40 # {{ defaultRelationsInsertPoint }}
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
41 ];
5
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
42
43
50ca202284d5 changes to model stub
Luka Sitas <sitas.luka.97@gmail.com>
parents: 40
diff changeset
43 public static function named_joins() {
50ca202284d5 changes to model stub
Luka Sitas <sitas.luka.97@gmail.com>
parents: 40
diff changeset
44 $joins = [
50ca202284d5 changes to model stub
Luka Sitas <sitas.luka.97@gmail.com>
parents: 40
diff changeset
45 //
50ca202284d5 changes to model stub
Luka Sitas <sitas.luka.97@gmail.com>
parents: 40
diff changeset
46 ];
50ca202284d5 changes to model stub
Luka Sitas <sitas.luka.97@gmail.com>
parents: 40
diff changeset
47 return parent::named_joins();
50ca202284d5 changes to model stub
Luka Sitas <sitas.luka.97@gmail.com>
parents: 40
diff changeset
48 }
50ca202284d5 changes to model stub
Luka Sitas <sitas.luka.97@gmail.com>
parents: 40
diff changeset
49
29
010ace248d14 Added support for filters, not fully there with relations or anything like that but it's a start
Luka Sitas <sitas.luka.97@gmail.com>
parents: 28
diff changeset
50 protected static $filters = [
28
f88d2d5dee30 Updated inputs and routes
Luka Sitas <sitas.luka.97@gmail.com>
parents: 26
diff changeset
51 # {{ defaultFiltersInsertPoint }}
f88d2d5dee30 Updated inputs and routes
Luka Sitas <sitas.luka.97@gmail.com>
parents: 26
diff changeset
52 ];
5
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
53
28
f88d2d5dee30 Updated inputs and routes
Luka Sitas <sitas.luka.97@gmail.com>
parents: 26
diff changeset
54 public static function get_filters() {
f88d2d5dee30 Updated inputs and routes
Luka Sitas <sitas.luka.97@gmail.com>
parents: 26
diff changeset
55 return static::filters;
5
b0b2e79ad8e6 Not exatly sure what was changed but commiting to it :)
luka
parents: 4
diff changeset
56 }
11
3426c7e91c24 Modifying generaters and replacers
luka
parents: 5
diff changeset
57
3426c7e91c24 Modifying generaters and replacers
luka
parents: 5
diff changeset
58 //relations
3426c7e91c24 Modifying generaters and replacers
luka
parents: 5
diff changeset
59
3426c7e91c24 Modifying generaters and replacers
luka
parents: 5
diff changeset
60 // BelongsTo
23
827efbf4d73c Huge changes to the relationships for models and more complex
Luka Sitas <sitas.luka.97@gmail.com>
parents: 11
diff changeset
61 # {{ belongs_to_relationships }}
11
3426c7e91c24 Modifying generaters and replacers
luka
parents: 5
diff changeset
62
3426c7e91c24 Modifying generaters and replacers
luka
parents: 5
diff changeset
63 // HasMany
24
31109c61ce02 Refactor RelationshipNavigator formatting and implement belongsTo, hasMany, belongsToMany injection in ModelGenerator
Luka Sitas <sitas.luka.97@gmail.com>
parents: 23
diff changeset
64 # {{ has_many_relationships }}
11
3426c7e91c24 Modifying generaters and replacers
luka
parents: 5
diff changeset
65
23
827efbf4d73c Huge changes to the relationships for models and more complex
Luka Sitas <sitas.luka.97@gmail.com>
parents: 11
diff changeset
66 // HasManyThrough
827efbf4d73c Huge changes to the relationships for models and more complex
Luka Sitas <sitas.luka.97@gmail.com>
parents: 11
diff changeset
67 # {{ has_many_through_relationships }}
11
3426c7e91c24 Modifying generaters and replacers
luka
parents: 5
diff changeset
68
26
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
69
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
70 /**
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
71 * Load the default relations for the model.
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
72 *
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
73 * @return $this
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
74 */
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
75 public function load_relations() {
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
76 foreach($this->default_relations as $relation) {
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
77 $this->load($relation);
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
78 }
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
79 return $this;
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
80 }
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
81
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
82 /**
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
83 * Retrieve a query builder instance with default relations loaded.
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
84 *
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
85 * @return \Illuminate\Database\Eloquent\Builder
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
86 */
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
87 public static function data_query() {
28
f88d2d5dee30 Updated inputs and routes
Luka Sitas <sitas.luka.97@gmail.com>
parents: 26
diff changeset
88 return parent::data_query();
26
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
89 }
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
90
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
91 /**
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
92 * Retrieve a query builder instance with default relations loaded.
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
93 *
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
94 * @return \Illuminate\Database\Eloquent\Builder
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
95 */
28
f88d2d5dee30 Updated inputs and routes
Luka Sitas <sitas.luka.97@gmail.com>
parents: 26
diff changeset
96 public static function get_data(array $validated = [])
26
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
97 {
28
f88d2d5dee30 Updated inputs and routes
Luka Sitas <sitas.luka.97@gmail.com>
parents: 26
diff changeset
98 return parent::get_data($validated);
26
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
99 }
555bfaa500ac Big update for view creation based on the column type.
Luka Sitas <sitas.luka.97@gmail.com>
parents: 24
diff changeset
100
4
a20439b1c9d3 Added Model generator and other updates.
luka
parents:
diff changeset
101 }