Reputation: 658
I am using a github project named mnabialek/laravel-modular. The package works fine but I cant pass requests to a different controller in diffrent module. How can I do that.
TestModule Controller
<?php
namespace App\Modules\TestModule\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Response;
use App\Modules\TestModule\Http\Requests\TestModuleRequest;
use App\Modules\Admin\Http\Requests\AdminRequest;
use App\Modules\TestModule\Repositories\TestModuleRepository;
use App\Modules\TestModule\Services\TestModuleService;
class TestModuleController extends Controller
{
/**
* @var TestModuleRepository
*/
protected $repo;
/**
* @var TestModuleService
*/
protected $service;
/**
* TestModuleController constructor.
*
* @param TestModuleRepository $repo
* @param TestModuleService $service
*/
public function __construct(TestModuleRepository $repo, TestModuleService $service)
{
$this->repo = $repo;
$this->service = $service;
}
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
//
//echo "Here you are";
//$data["data"] = "Here you are";
//return view("welcome")->with($data);
$working = "Its Working";
$message = App::make("App\\Modules\\Admin\\Http\\Controllers\\AdminController")->create($working);
}
/**
* Show the form for creating a new resource.
*
* @return Response
*/
}
AdminController.php
<?php
namespace App\Modules\Admin\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Response;
use App\Modules\Admin\Http\Requests\AdminRequest;
use App\Modules\Admin\Repositories\AdminRepository;
use App\Modules\Admin\Services\AdminService;
class AdminController extends Controller
{
/**
* @var AdminRepository
*/
protected $repo;
/**
* @var AdminService
*/
protected $service;
/**
* AdminController constructor.
*
* @param AdminRepository $repo
* @param AdminService $service
*/
public function __construct(AdminRepository $repo, AdminService $service)
{
$this->repo = $repo;
$this->service = $service;
}
/**
* Display a listing of the resource.
*
* @return Response
*/
public function index()
{
//
}
/**
* Show the form for creating a new resource.
*
* @return Response
*/
public function create($working)
{
die(print_r($working));
//
}
}
Here is the error I am getting.
Class 'App\Modules\TestModule\Http\Controllers\App' not found
Upvotes: 2
Views: 705
Reputation: 9396
Try the following:
$message = Illuminate\Support\Facades\App::make("App\\Modules\\Admin\\Http\\Controllers\\AdminController")->create($working);
As App
does not exist in the current namespace, you have to call it from where it is defined.
Upvotes: 1