File: /var/www/api-talleres.bradford/app/Models/Parents.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Parents extends Model
{
use HasFactory;
protected $table = 'parents';
protected $fillable = [
'relationship_id',
'rut',
'first_name',
'second_name',
'last_name',
'second_last_name',
'email',
'home_phone',
'work_phone',
'mobile',
'birth_date',
'status',
'code_toku',
'user_id',
'gender_id',
'country_id',
'region_id',
'commune_id',
'address',
'profession',
'deleted',
'deleted_at',
'user_created',
'user_updated',
'user_deleted',
];
protected $hidden = [
'deleted',
'deleted_at',
'user_deleted'
];
// Relación con relationships
public function user()
{
return $this->belongsTo(User::class, 'user_id');
}
// Relación con relationships
public function relationship()
{
return $this->belongsTo(Relationship::class, 'relationship_id');
}
public function gender()
{
return $this->belongsTo(Gender::class, 'gender_id');
}
public function country()
{
return $this->belongsTo(Country::class, 'country_id');
}
public function region()
{
return $this->belongsTo(Region::class, 'region_id');
}
public function commune()
{
return $this->belongsTo(Commune::class, 'commune_id');
}
/**
* Pedidos de inscripción a talleres del apoderado.
*/
public function clubOrders()
{
return $this->hasMany(ClubOrder::class, 'parent_id');
}
// Relaciones con el modelo Users
public function createdBy()
{
return $this->belongsTo(User::class, 'user_created');
}
public function updatedBy()
{
return $this->belongsTo(User::class, 'user_updated');
}
public function deletedBy()
{
return $this->belongsTo(User::class, 'user_deleted');
}
}