Здравствуйте, ищу помощника, как разбираться в модели Laravel Eloquent. Мне нужно удалить пользователя по Id, но у меня есть таблица Main_info, Personal_info, Holidays, other_info, fm_day, oth_daysoff. На них все я вставил UserId, и мне нужно удалить выбранный UserId из всех таблиц? Может быть, кто-то может помочь мне Как я могу сделать это с моделью Laravel Eloquent?
Вот мой взгляд с кнопкой «Удалить» и методом публикации:
<div class="container">
<div class="row">
<div class="col">
<div class="card">
<div class="card-head-man">
<span>Filter type: </span>
<a href="javascript:void(0)" class="btn btn-secondary btn-sm">Position</a>
<a href="javascript:void(0)" class="btn btn-secondary btn-sm">Active/No</a>
<a href="javascript:void(0)" class="btn btn-secondary btn-sm">Employment type</a>
<a href="javascript:void(0)" class="btn btn-secondary btn-sm">Location</a>
</div>
</div>
</div>
<div class="col-12">
<div class="card">
<div class="card-header">
<h3 class="card-title">List of employees</h3>
</div>
<div class="table-responsive">
<table class="table card-table table-vcenter text-nowrap">
<thead>
<tr>
<th class="w-1"><a href="#" class="sort-act">ID<span class="caret"></span></a></th>
<th><a href="#" class="sort-act">First Name<span class="caret"></span></a></th>
<th>Last Name</th>
<th>Position</th>
<th>Active/no</th>
<th>Employment type</th>
<th>Location</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
@foreach($allData as $data)
<tr>
<td><span class="text-muted">{{ $data->id }}</span></td>
<td>{{ $data->first_name }}</td>
<td>
{{ $data->last_name }}
</td>
<td>
{{ $data->position }}
</td>
<td>
{{ $data->employment_type }}
</td>
<td>
<span class="status-icon bg-success"></span> Active
<span class="status-icon bg-danger"></span> No
</td>
<td>{{ $data->location }}</td>
<td class="text-right">
<a href="javascript:void(0)" class="btn btn-secondary btn-sm">Manage</a>
<div class="dropdown">
<form action="/deleteFromHome" method="post">
{{csrf_field()}}
<input style="display: none;" type="text" name="deleteUserId" class="form-control" id="inputName3" value="{{ $data->id }}">
<button type="submit" class="btn btn-secondary btn-sm">Delete</button>
</form>
</div>
</td>
<td>
<a class="icon" href="javascript:void(0)">
<i class="fe fe-edit"></i>
</a>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
Вот мой контроллер, как я делаю это сейчас:
public function deleteUserFromHome(Request $req)
{
$userId = $req->input('deleteUserId');
OtherInfo::where('id', $userId)->delete();
OthDaysInfo::where('id', $userId)->delete();
HolidaysInfo::where('id', $userId)->delete();
FMdaysInfo::where('id', $userId)->delete();
PersonalInfo::where('id', $userId)->delete();
PersonalInfo::where('id', $userId)->delete();
MainInfo::where('id', $userId)->delete();
return redirect('home');
}
Может быть, есть какой-нибудь лучший способ удалить все данные из всех таблиц о выбранном ИД пользователя?
Мне нужен пример того, как я могу сделать модель Laravel Eloquent для удаления с помощью функции HasMany или еще чего-нибудь?