Dependency injection doesn't work like it should on api routes
Dani2kn opened this issue · 0 comments
Fresh laravel project with only caffeinated install
Create Module User
RouteServiceProvider
` protected function mapWebRoutes()
{
Route::group([
'middleware' => 'web',
'namespace' => $this->namespace,
], function ($router) {
require module_path('user', 'Routes/web.php', 'app');
});
}
/**
* Define the "api" routes for the module.
*
* These routes are typically stateless.
*
* @return void
*/
protected function mapApiRoutes()
{
Route::group([
// 'middleware' => 'auth:api',
'namespace' => $this->namespace,
'prefix' => 'api',
], function ($router) {
require module_path('user', 'Routes/api.php', 'app');
});
}`
api.php
Route::apiResource('user', 'UserController')
web.php
Route::resource('user', 'UserController');
UserController.php
/** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function show(User $user) { dd($user); }
on web.php
User {#355 #fillable: array:3 [ 0 => "name" 1 => "email" 2 => "password" ] #hidden: array:2 [ 0 => "password" 1 => "remember_token" ] #casts: array:1 [ "email_verified_at" => "datetime" ] #connection: "mysql" #table: "users" #primaryKey: "id" #keyType: "int" +incrementing: true #with: [] #withCount: [] #perPage: 15 +exists: true +wasRecentlyCreated: false #attributes: array:8 [ "id" => 1 "name" => "safsg" "email" => "dasfa@fdsg.com" "email_verified_at" => "2019-10-02 00:00:00" "password" => "sgfdfgfdhf" "remember_token" => null "created_at" => null "updated_at" => null ] #original: array:8 [ "id" => 1 "name" => "safsg" "email" => "dasfa@fdsg.com" "email_verified_at" => "2019-10-02 00:00:00" "password" => "sgfdfgfdhf" "remember_token" => null "created_at" => null "updated_at" => null ] #changes: [] #dates: [] #dateFormat: null #appends: [] #dispatchesEvents: [] #observables: [] #relations: [] #touches: [] +timestamps: true #visible: [] #guarded: array:1 [ 0 => "*" ] #rememberTokenName: "remember_token" }
on api.php
User {#324 #fillable: array:3 [ 0 => "name" 1 => "email" 2 => "password" ] #hidden: array:2 [ 0 => "password" 1 => "remember_token" ] #casts: array:1 [ "email_verified_at" => "datetime" ] #connection: null #table: null #primaryKey: "id" #keyType: "int" +incrementing: true #with: [] #withCount: [] #perPage: 15 +exists: false +wasRecentlyCreated: false #attributes: [] #original: [] #changes: [] #dates: [] #dateFormat: null #appends: [] #dispatchesEvents: [] #observables: [] #relations: [] #touches: [] +timestamps: true #visible: [] #guarded: array:1 [ 0 => "*" ] #rememberTokenName: "remember_token" }