2
我正在构建一个严重依赖变形许多关系的软件包。像往常一样,这种关系需要定义的关系如下:Laravel 5动态变形法
public function foos()
{
return $this->morphToMany('App\Models\Foo', 'barable');
}
这显然工作正常,这里没有问题。
虽然有很多这些关系需要定义。我想通过循环遍历它们并自动构建它们来更容易地配置包。
我曾尝试以下:
public function __get($name)
{
if($name == 'foos') {
return $this->morphToMany('App\Models\Foo', 'barable');
}
}
这并不发起查询检索数据。它被调用,但它不返回数据。
__call函数对我来说似乎也合乎逻辑,但这只是打破了Laravel。据我所知,它可以提取课堂上所有被调用的内容。
现在的另一种方法是包含一个特征,并让程序员在可发布文件中填充这些关系,但这只是感觉不对。
有什么建议吗?