使用路由参数 return 视图不完整且没有 Css [Laravel 5]

Using Route Parameter return the view incomplete and without Css [Laravel 5]

当我使用这条路线时:

Route::get('home', function()
{
   return View::make('index');
});

与 URL:

localhost/laravel/public/home

它获得了视图并且效果很好

但是使用这条路线时:

Route::get('home/{id}', function($id)
{
    return View::make('index')->with('id', $id);
});

与 URL:

localhost/laravel/public/home/10

它是视图,但 效果不佳 该视图没有任何 CSS、JS、.. 等

我不能在这里定义错误?!

是的,我知道这个问题可能已经很晚了,但我也遇到了同样的问题并陷入了同样的境地。 在阅读和研究 google 之后,我得到了答案。 我希望它可以帮助某人。

出现这个问题是因为我们在blade template中使用了relative path,而solution太简单了,我们只需要使用asset函数就可以克服这个问题。

所以像这样更改您的代码...

<link href="{{ asset('css/bootstrap.min.css') }}" rel='stylesheet' type='text/css' />
<script src="{{ asset('js/jquery.min.js') }}"> </script>

希望对您有所帮助。

快乐编码:)

控制器:

public function Details($id){
        $demandes=DB::select('SELECT * FROM demande where id_demande=? ',[$id]);
        $buts=DB::select('SELECT * FROM but where id_demande=? ',[$id]);
        return view('details')->with(array('demandes'=>$demandes ,'buts'=>$buts));
    }

Web.php :

Route::get('/Details/{id}','DemandeController@Details')->name('Details');

Blade.php :

@extends('layouts.mainlayout')
@section('content')
//code
@endsection

问题是 blade 没有加载 css 和 Js 所以你需要把这段代码放在 <head> ----> <base href="/public">

运行这个..

php artisan ui bootstrap --auth

来源:Laravel frontend docs

如上所述,不仅针对从 blade 中的 header 调用的资源,而且为了确保有效性,还确保使用 blade 中的所有其他资源也被引用 asset() 方法,例如在没有您的页面的情况下引用图像/视频时。

好的,这是一个旧线程,但这是我记录的解决方案。

我已将 ../ 放在我现有资源的前面,例如

<script src="js/front.js"></script>

变成了

<script src="../js/front.js"></script>