هر کلاسی رو تو کلاس دیگه بخواهید استفاده کنید باید نام کلاس را با namespace اون به طور کامل بنویسید اما تو بخش های قبلی گفته بودم بهتره ابتدای کلاس اونو ایمپورت کنید.
ابتدای کلاس کنترلرتون به این صورت ایمپورت کنید:
use AppCommandsChangeLocaleCommand;
خوب چیزی که من نوشتم اینه و استفاده از namespace رو حواسم بوده لحاظ کردم :
<?php
namespace AppHttpControllers;
use AppCommandsChangeLocaleCommand;
class SystemController extends Controller
{
public function language(ChangeLocaleCommand $changeLocalCommand)
{
$this->dispatch($changeLocalCommand);
return redirect()->back();
}
}
ولی بازم خطا میده
کلاس ChangeLocaleCommand که نوشتین رو اینجا قرار بدین
گذاشتم
<?php
namespace AppCommands;
use Session;
use SymfonyComponentConsoleCommandCommand;
use IlluminateContractsBusSelfHandling;
class ChangeLocaleCommand extends Command implements SelfHandling
{
public function __construct()
{
}
public function handle()
{
$locale = Session::get('locale') == 'fa' ? 'en' : 'fa';
Session::put('locale', $locale);
}
}
این هم درسته و مشکلی نداره
من فایلهای پروژه رو تو همون لینک اپلود کردم دانلودش کنید و کدهارو با کدهایی که شما نوشتین مقایسه بکنید ببینید اشکالتون کجاست