我无法访问Laravel视图

时间:2018-09-17 11:45:28

标签: php laravel

我刚刚在view/about.blade.php中创建了一个关于视图的视图,我正在从 localhost / myproject / public / about 访问此视图,但是它不起作用。

但是,localhost / myprojects / public /工作正常;在Laravel中,默认情况下,关于view的创建参数与welcome相同。

4 个答案:

答案 0 :(得分:0)

您是否已将特定路由添加到web.php文件?

Route::get('about', function () {
    return view('about');
});

https://laravel.com/docs/5.7/routing

答案 1 :(得分:0)

您遇到什么错误?

404-找不到

Route::get('/about', function () {
    return view('about');
});

检查路线

php artisan route:list

答案 2 :(得分:0)

首先,该信息不足以说明任何问题。请提供您的路线。同样重要的是,您如何运行您的项目,是通过Xampp(或通过Lampp进行的)或“ php artisan serve” 但是从您的工作目录“ localhost / myprojects / public”中查找,我想它不是通过命令来的。尝试 localhost / myprojects / public / about.blade.php 或通过 php artisan serve 运行它,然后尝试路由 localhost:8000 / about

答案 3 :(得分:0)

Laravel是一个MVC框架,这意味着您有一个Controller,当有一些请求进入时,它会执行一些逻辑,并在需要时与模型进行交互,然后控制器返回一些视图。

并且由于您想访问您的视图文件,因此您必须经过控制器,该控制器将呈现视图。因为views文件夹不在\public词典目录中,所以您无法使用localhost/myproject/public/about这样的URL来访问它,即使可以访问它,也不会获得HTML,而是会得到一些具有刀片标记的纯文本。必须通过渲染控制器中的视图来返回视图,该视图在后台Laravel中进行所有Blade标签并返回与该标签相对应的HTML。

我建议您在这样的路由文件中创建一条路由

Route::get('/about', function(Request $request){
    // Automatically Laravel will look this file in the view directory
    return view('about');
});

或者您可以通过创建一些控制器来使用类似过程的控制器,进入终端并执行

php artisan make:controller AboutController

这会在您会发现的女巫的app\Http\Controllers目录中生成一个文件名AboutController.php

namespace App\Http\Controllers;

class HomeController extends Controller
{

}

之后添加

public function index()
{

    return View::make('about');
}

请不要忘记在文件顶部添加use the Illuminale\Supports\Facades\View

还有一件更重要的事情是配置 Route ,将其放入routes文件add

中的web.php目录中
Route::get('/about', 'AboutController@index')->name('about');