使用路由参数 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
如上所述,不仅针对从 blade 中的 header 调用的资源,而且为了确保有效性,还确保使用 blade 中的所有其他资源也被引用 asset() 方法,例如在没有您的页面的情况下引用图像/视频时。
好的,这是一个旧线程,但这是我记录的解决方案。
我已将 ../ 放在我现有资源的前面,例如
<script src="js/front.js"></script>
变成了
<script src="../js/front.js"></script>
当我使用这条路线时:
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
如上所述,不仅针对从 blade 中的 header 调用的资源,而且为了确保有效性,还确保使用 blade 中的所有其他资源也被引用 asset() 方法,例如在没有您的页面的情况下引用图像/视频时。
好的,这是一个旧线程,但这是我记录的解决方案。
我已将 ../ 放在我现有资源的前面,例如
<script src="js/front.js"></script>
变成了
<script src="../js/front.js"></script>