Laravel Scout-在自定义引擎中为模型执行自定义方法

Laravel Scout-在自定义引擎中为模型执行自定义方法,laravel,laravel-scout,Laravel,Laravel Scout,这是一个非常基本的问题,但是定制引擎的文档非常少(这里的文档:) 在我的应用程序中,我将elasticsearch与laravel scout一起使用。为此,我必须创建自己的引擎 我目前正在我的评论模型上测试这个,到目前为止,它工作得很好。但是,我不知道如何在默认方法之外执行自己的方法 例如,如果我删除控制器中的注释 Comment::find(1)->delete(); 然后,这也会自动在我的自定义引擎中运行delete方法: public function delete($model

这是一个非常基本的问题,但是定制引擎的文档非常少(这里的文档:)

在我的应用程序中,我将elasticsearch与laravel scout一起使用。为此,我必须创建自己的引擎

我目前正在我的评论模型上测试这个,到目前为止,它工作得很好。但是,我不知道如何在默认方法之外执行自己的方法

例如,如果我删除控制器中的注释

Comment::find(1)->delete();
然后,这也会自动在我的自定义引擎中运行delete方法:

public function delete($models) {
    $models->each(function ($model) {
        $params = [
            'index' => $model->searchableAs(),
            'type' => $model->searchableAs(),
            'id' => $model->id
        ];
        
        $this->client->delete($params);
    });     
}
这也会删除搜索记录,这很好,但是如果我想创建自己的方法并以同样的方式执行它呢?例如:

Comment::find(1)->customSearchEngineMethod();
或者,使用相同的示例,如果我想在我的引擎中运行delete方法来删除搜索记录,而不删除我的注释,该怎么办