当前位置:  开发笔记 > 编程语言 > 正文

如何使用别名调用特征方法

如何解决《如何使用别名调用特征方法》经验,为你挑选了1个好方法。

我正试图在一个名为Page的类中放置一个特征.我还需要重命名一个特征函数,以便它不会与现有的类函数冲突.我以为我成功完成了所有这些,但是我得到一个指向错误位置的错误?!

Call to undefined function App\Pages\Models\myTraitDefaultScope()

我也试过:MyTrait\defaultScope($query)而不是试图重命名冲突的功能.但是我得到以下错误:

Call to undefined function App\MyTrait\defaultScope()

下面是单独文件中包含的特征和类.

where('active', '1')
    }
}

.



我不是那么棒,所以如果我有一些严重错误请不要开枪:)



1> Moppo..:

当你在类中使用'trait'时,该类继承了trait的所有方法和属性,就像它扩展了一个抽象类或接口一样

所以,这种方法MyTrait:

public function defaultScope($query){
    return $query->where('active', '1')
}

将由您的Page班级继承

因为您将此方法别名为:myTraitDefaultScope,要调用该方法,您应该调用它,就像调用Page该类的其他每个方法一样 :

public function defaultScope($query){

    //call the method of the class
    return $this->myTraitDefaultScope($query);
}

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有