我正在清理我的應用程序中的代碼。似乎我對::class
表示法有一種誤解。在我宣佈config/app.php
提供商我可以在模型函數中使用`:: class`表示法 - Laravel
雖然可以說這個轉換:'igaster\laravelTheme\themeServiceProvider',
這個 igaster\laravelTheme\themeServiceProvider::class,
,我不能在車型對象確實是相同的。
舉例來說,我有
public function relateds()
{
return $this->hasMany('App\Models\Related', 'item_id')->Where('itemkind', '=', 'capacitytypes', 'and')->Where('status', '!=', '2');
}
轉換後進入
public function relateds()
{
return $this->hasMany(App\Models\Related::class, 'item_id')->where('itemkind', '=', 'capacitytypes')->where('status', '!=', '2');
}
我收到錯誤
FatalThrowableError in Model.php line 918: Class 'App\Models\App\Models\Action' not found
這是否意味着我不能使用模型符號,或者我做錯了?
我認爲這應該工作。這個問題可能是因爲你在命名空間中引用了相關模型,使得完整的namespce以一種你不想要的方式出現。你有沒有注意到'App \ Models \ App \ Models \ Action'的路徑問題?改爲使用'Related :: class'。 – Qevo
Try \ App \ Models \相關::類代替(在開始時額外的反斜槓) –
曼努埃爾,它的工作。令我驚訝的是,我自己試圖做到這一點。我必須從應用程序積極反饋。謝謝。請將您的評論升級爲答案。 – Peter