Laravel 5.4控制器没有显示页面

时间:2019-02-16 09:50:51

标签: php laravel laravel-5.4

我有一个文件夹“ aboutus ”,其中包含“ index.blade.php ”文件和文件夹“ 谢谢”。 文件夹“ 感谢”还包含“ index.blade.php

我俩的路线:

    Route::resource('admin/aboutus', 'AdminAboutusController',['names'=>[

        'index'=>'admin.aboutus.index',
        'create'=>'admin.aboutus.create',
        'store'=>'admin.aboutus.store',
        'edit'=>'admin.aboutus.edit'
    ]]);

    Route::resource('admin/aboutus/thanks', 'AboutThanksController',['names'=>[

        'index'=>'admin.aboutus.thanks.index',
        'create'=>'admin.aboutus.thanks.create',
        'store'=>'admin.aboutus.thanks.store',
        'edit'=>'admin.aboutus.thanks.edit'
    ]]);

我分别为 aboutus thanks 创建了控制器(AdminAboutusController和AboutThanksController)

AdminAboutusController 索引函数返回我能够看到的视图

public function index() { return view('admin.aboutus.index'); }

但是控制器 AboutThanksController 并没有显示我的页面,而是显示白色空白

public function index() { return view('admin.aboutus.thanks.index'); }

php artisan route:list 上,我可以看到该路由是可行的。 为什么会发生,我该如何解决?

3 个答案:

答案 0 :(得分:1)

thanks路线置于about us路线上方

Route::resource('admin/aboutus/thanks', 'AboutThanksController',['names'=>[

    'index'=>'admin.aboutus.thanks.index',
    'create'=>'admin.aboutus.thanks.create',
    'store'=>'admin.aboutus.thanks.store',
    'edit'=>'admin.aboutus.thanks.edit'
]]);
Route::resource('admin/aboutus', 'AdminAboutusController',['names'=>[

    'index'=>'admin.aboutus.index',
    'create'=>'admin.aboutus.create',
    'store'=>'admin.aboutus.store',
    'edit'=>'admin.aboutus.edit'
]]);

答案 1 :(得分:0)

发布答案以结束问题:

您有admin.aboutus.thnx.index,但您的文件夹是admin/aboutus/thanks/index

请更改为admin.aboutus.thanks.index,它应该可以工作

答案 2 :(得分:0)

使用route:list可以看到路由列表,但是return view()函数不将route作为参数。您必须提供文件名和路径。例如,您要显示thanks.blade.php文件,该文件位于视图文件夹的admin / aboutus内部。所以你必须写:

return view('admin.aboutus.thanks');