🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ حسین عابدی
سوال در مورد Routing در لاراول ۸
مهرداد سامی حل شده توسط مهرداد سامی

با سلام و احترام

مطابق توضیحات و کدی که در فایل web.php ثبت فرموده بودید، نوشته شده:

Route:get('/notification/send-email','NotificationsController@email')->name('notification.form.email');

 

بنده این کد رو تست کردم ولی متاسفانه با خطای Target class [NotificationsController] does not exist مواجه شدم که در نتیجه برای حل اون مجبور شدم کد رو به شکل زیر تغییر بدم:

Route::get('/notification/send-email','App\Http\Controllers\NotificationsController@email')->name('notification.form.email');

که در واقع مسیر دسترسی به کلاس رو مجبور شدم قید کنم. خواستم ببینم شما تنظیمات خاصی انجام دادید یا اینکه در نسخه لاراول ۸ که بنده استفاده میکنم به این صورت هست و نمیتونه خودش مسیر کنترلر رو تشخیص بده؟

سلام 

 

در لاراول ۸ برای این مورد تغییراتی داده شده که یا باید آدرس کامل کنترلر رو درون روتر تعریف کنید و یا اینکه در داخل فایل RouterServiceProvider خط ۲۹ رو از حالت کامنت در بیارید.

 

 /**                                                                                                                                           
 23      * The controller namespace for the application.                                                                                              
 24      *                                                                                                                                            
 25      * When present, controller route declarations will automatically be prefixed with this namespace.                                            
 26      *                                                                                                                                            
 27      * @var string|null                                                                                                                           
 28      */                                                                                                                                           
 29     protected $namespace = 'App\\Http\\Controllers';               
بهترین پاسخ
مهرداد سامی ۲۳ آذر ۱۳۹۹، ۱۵:۵۵