不能在 laravel 中使用控制器名称,必须使用命名空间
Can not use controller name in laravel, must use namespace
Blade view and PostsController
当我使用{!! Forms::open(['method'=>'post', 'action'=>'PostsController@store']) !!}
出错了。
但是当我使用 {!! Forms::open(['method'=>'post', 'action'=>'App\Http\Contollers\PostsController@store']) !!
有效。
为什么我不能只使用控制器名称而不是命名空间名称?
感谢您的帮助。
您可以使用这样的路线名称
Form::open(['route' => 'route.name'])
例如,创建一个 post 应该是这样的
Form::open(['route' => 'posts.create'])
有关更多信息,请查看文档 here
在RouteServiceProvider.php取消注释
受保护的 $namespace = 'App\Http\Controllers';
这条线
根据 [PSR-0, PSR-4] 编码标准,我们必须在代码中使用命名空间。
在你的情况下,如果你不写完整路径,你可以简单地使用:
- 'action'=>“{{路线('route_name')}}”
- 'action'=>“{{ url('url_name') }}”
Blade view and PostsController
当我使用{!! Forms::open(['method'=>'post', 'action'=>'PostsController@store']) !!}
出错了。
但是当我使用 {!! Forms::open(['method'=>'post', 'action'=>'App\Http\Contollers\PostsController@store']) !!
有效。
为什么我不能只使用控制器名称而不是命名空间名称?
感谢您的帮助。
您可以使用这样的路线名称
Form::open(['route' => 'route.name'])
例如,创建一个 post 应该是这样的
Form::open(['route' => 'posts.create'])
有关更多信息,请查看文档 here
在RouteServiceProvider.php取消注释 受保护的 $namespace = 'App\Http\Controllers'; 这条线
根据 [PSR-0, PSR-4] 编码标准,我们必须在代码中使用命名空间。
在你的情况下,如果你不写完整路径,你可以简单地使用:
- 'action'=>“{{路线('route_name')}}”
- 'action'=>“{{ url('url_name') }}”