如何在不污染全局范围空间的情况下创建可供多个模型使用的范围?每次我想使用它时,都会手动调用此范围。
示例:
$assigns = Assign::dryScope();
$contacts = Contact::dryScope();
答案 0 :(得分:3)
最好的方法是使用特征。根据需要使用适当的命名空间。 ScopeTrait.php
trait ScopeTrait {
protected function dryScope() {
//Scope definition
}
}
class Assign extends xModel
{
use ScopeTrait;
}
答案 1 :(得分:1)
您可以创建一个扩展模型的类,遵循以下模板:
class xModel extends Model
{
protected function dryScope() {}
}
class Assign extends xModel
{
}