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。據我所知,它可以提取課堂上所有被調用的內容。
現在的另一種方法是包含一個特徵,並讓程序員在可發佈文件中填充這些關係,但這只是感覺不對。
有什麼建議嗎?