在我的Laravel项目中,我设置了一条路线来显示用户的个人资料页面。
Route::get('{id}', ['as' => 'profile', 'uses' => 'UsersController@show']);
这条路线的一切都很好。但是,我想将路线更改为
Route::get('profile/{id}', ['as' => 'profile', 'uses' => 'UsersController@show']);
当我这样做并导航到my.app:8000/profile/1
我的CSS和html很好,但是我得到了一个破损的图像链接,我的jquery不再有效
我也试过
Route::get('/profile/{id}', ['as' => 'profile', 'uses' => 'UsersController@show']);
我正在使用src="{{URL::asset("images/users/xxxxxxx")}}"
加载我的图片以及jquery
我的路线档案中没有其他地方我有profile/
不确定我能做什么。有人知道解决这个问题的方法吗?
编辑:
这是我的HTML:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<!--Main Style Sheet-->
{{ HTML::style('css/style.css'); }}
<!-- JQuery -->
<script src="/jquery/jquery-1.11.0.js"></script>
</head>
<body class="main-body">
<!-- this image works now that i added the leading / -->
<img src="{{ URL::asset("/images/users/{$user->id}/profilePictures/176thumb-{$user->profilePicture->url}") }}" alt="{{ $user->first_name }} {{ $user->last_name }} Profile Picture" width="176" height="176">
<!-- the jQuery For this is not working -->
<ul class="list-grid">
<li>
<div class="profile-example">
<div class="add-box"></div>
</div>
</li>
</ul>
<!-- Include woodmark. This is the jquery plugin that isn't working -->
<script src="/jquery/jquery.wookmark.js"></script>
<!--Woodmark settings-->
<script type="text/javascript">
(function ($){
$(function() {
var $handler = $('.list-grid li');
$handler.wookmark({
// Prepare layout options.
align: 'center',
autoResize: true,
comparator: null,
container: $('html'),
direction: undefined,
ignoreInactiveItems: true,
itemWidth: 560,
fillEmptySpace: false,
flexibleWidth: true,
offset: 8,
onLayoutChanged: undefined,
outerOffset: 0,
possibleFilters: [],
resizeDelay: 50,
verticalOffset: undefined
});
});
})(jQuery);
</script>
</body>
</html>
答案 0 :(得分:1)
我认为这是你的JS /图像路径的问题,而不是Laravel。当您包含jQuery / images时,听起来就像是在使用相对路径,如下所示:
<script src="jquery/jquery.js>
<img src="img/image.jpg">
当您以这种方式调用资源时,如果您位于根级别,则会查找http://example.com/img/image.jpg
,但如果您位于/profile
,则会查找http://example.com/profile/img/image.jpg
。
如果在前面添加斜杠,它将始终从Web根目录开始路径:
<script src="/jquery/jquery.js>
<img src="/img/image.jpg">
如果您的CSS没问题,那么我怀疑您已经使用了绝对路径。
答案 1 :(得分:1)
我用过
{{ HTML::script('jquery/jquery.js'); }}
而不是
<script src="/jquery/jquery.js"></script>
现在一切正常