You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel点击专辑封面跳转详情页,Foreach循环返回全部结果问题

问题解决步骤

你的问题核心是没有传递被点击专辑的ID到详情页,且控制器没有根据ID查询指定专辑,以下是具体修改方案:

1. 修正路由(web.php)

添加支持专辑ID的详情页路由,用Laravel路由模型绑定简化查询逻辑:

Route::get('/albums/{album}', [AlbumDetailsController::class, 'show'])->name('albums.show');

2. 修改控制器(AlbumDetailsController)

替换原有的index方法为show方法,直接接收专辑模型实例,自动获取指定专辑:

public function show(Album $album): View
{
    return View("details.index", [
        'album' => $album
    ]);
}

路由模型绑定会自动根据URL中的ID匹配对应专辑,若专辑不存在则返回404页面,无需手动编写Album::find($id)这类查询代码。

3. 修正专辑列表页的跳转链接

在你展示「一列专辑封面」的页面(非详情页),将封面的跳转链接修改为指向详情路由,传递当前专辑参数:

<a href="{{ route('albums.show', $album) }}">
    <img src="{{ asset('storage/' . $album->image_path) }}" alt="{{ $album->name }}" class="img-fluid">
</a>

4. 修改详情页Blade视图

现在传递到详情页的是单个专辑对象$album,而非集合$albums,因此移除@foreach循环,直接使用单个变量渲染内容:

@extends('layouts.app')
@section('content')
    <div class="container">
        <h1 class="my-4"><a href="#" class="text-dark">{{ $album->name }}</a></h1>
        <div class="row">
            <div class="col-lg-6 mb-4">
                <div class="card h-100">
                    <div class="card-body">
                        <h4 class="card-title"></h4>
                        <span class="text-dark">{{ $album->artist }}</span>
                    </div>
                </div>
            </div>
            <div class="col-lg-6 mb-4">
                <div class="card h-100">
                    <img src="{{ asset('storage/' . $album->image_path) }}" alt="{{ $album->name }}" class="img-fluid card-img-top">
                    <div class="card-body">
                        <h4 class="card-title">
                            <span class="text-dark">{{ $album->artist }}</span>
                        </h4>
                        <p class="text-dark">{{ $album->description }}</p>
                    </div>
                </div>
            </div>
        </div>
    </div>
@endsection

提示:把原代码中不必要的空<a href="#">标签改成<span>,避免无效跳转。

内容的提问来源于stack exchange,提问作者Pawel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 10:45:36