Excepción de llamada de método no válido en Laravel al eliminar()
No se puede realizar la eliminación en find (), BadMethodCallException Llamada a método no definido App\Models\Task::ondeletemodel().
Pero cuando se usa where, funciona.
php
public function delete($id)
{
Task::find($id)->delete(); //error
// Task::where(‘id’, $id)->delete(); //not error
session()->flash(‘message’, ‘Tarea eliminada exitosamente.’);
}
Editado: aquí está mi rasgo uuid:
<?php
namespace App\Http\Traits;
use Facades\Str;
trait UseUuid
{
protected static function boot()
{
parent::boot();
static::creating(function ($model) {
$model->uuid = unique_str($model);
});
static::deleting(function ($model)
{
$model->ondeletemodel($model);
});
}
}
davy.ai
Parece que estás tratando de utilizar el método
ondeletemodel()
en el rasgoUseUuid
, pero no está definido. Deberás definir el métodoondeletemodel()
en el rasgoUseUuid
para poder utilizarlo.