Так почему бы вам просто не удалить их и не использовать их в качестве архива.Будет проще выполнять такие операции, как восстановление, получение и т. Д.
Для мягкого удаления модели требуется
use SoftDeletes;
И в вашей таблице миграции
$table->softDeletes();
Тогда, когда вызапустите $client->delete();
модель будет помечена только как удаленная и не будет отображаться в запросах, если вы не используете withTrashed()
в запросе.И если вы хотите вернуть его обратно, вы запускаете $client->restore()
;
https://laravel.com/docs/5.7/eloquent#soft-deleting
Или решение, которое вы просили
public function destroy($id)
{
$client = Client::find($id);
Archive::create([
'client_code' => $client->client_code,
'client_name' => $client->client_name
])
$client->delete();
}
Не знаете, как вы будетеподключите архивные данные к клиенту, если они были удалены, возможно, есть user_id, чтобы вы знали, кто что имеет.Тем не менее, по-прежнему рекомендуем использовать программные средства для этого.