【发布时间】:2018-02-12 18:40:56
【问题描述】:
这个答案没有解决我的问题Route::controllers - Method [index] does not exist on [App\Http\Controllers
在 web.php 中
Route::prefix('admin')->group(function () {
Route::resource('post', 'admin\PostsController');
});
在 app/Http/Controllers/admin 中
我有 PostsController.php
其中包含
<?php
namespace App\Http\Controllers\admin;
use App\Model\Post;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
class PostsController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
//
$posts = \App\Post::all();
return view('admin.posts',['posts'=>$posts]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create(Request $request)
{
//
$post = new Post;
$post->content = $request->input('descr');
$post->save();
}
当我访问这个网址时http://127.0.0.1:8000/admin/post
我收到以下错误
BadMethodCallException 方法 [index] 不存在于 [App\Http\Controllers\admin\PostsController]。
call_user_func_array
…
/vendor/laravel/framework/src/Illuminate/Routing/Controller.php 56
public function callAction($method, $parameters)
{
print_r($this);
echo $method;die();
return call_user_func_array([$this, $method], $parameters);
}
//打印
App\Http\Controllers\admin\PostsController Object ( [middleware:protected] => Array ( ) ) index
php artisan 打印以下内容
php artisan route:list
| | GET|HEAD | admin/post | post.index | App\Http\Controllers\admin\PostsController@index | web
【问题讨论】:
-
尝试访问
posts。 -
@MASh 豆想让我试试127.0.0.1:8000/admin/posts 而不是127.0.0.1:8000/admin/post 我得到页面未找到错误
-
是的。试试这个。
-
@MASh 我得到页面未找到错误
-
然后有一些东西。写一条路线:
Route:get('posts','admin\PostsController@index'); and now try to access toadmin/posts`。