php - 我的显示功能在 Laravel 中不起作用。URL显示特定的ID,但在页面数据不会来
问题描述
当我单击产品页面上的特定产品时,它会将我定向到单个产品页面。特定的产品 ID 也显示在 URL 中。但是数据不会被传递。我的单个产品页面没有显示特定的产品数据。
这是我的控制器。
SingleProductController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Product;
use App\Category;
class SingleProductController extends Controller
{
public function index(Product $product)
{
$arr['product'] = $product;
return view('singleproducts')->with($arr);
}
public function create()
{
//
}
public function store(Request $request)
{
//
}
public function show($id)
{
$product = Product::find($id);
return view ('singleproducts')->with(['product'=>$product]);
}
public function edit($id)
{
//
}
public function update(Request $request, $id)
{
//
}
public function destroy($id)
{
//
}
}
这是我的刀片文件。
singleproducts.blade
@extends('layouts.singleproducts')
@section('content')
<h2 class="font-size-25 text-lh-1dot2">{{ $product ['prod_name'] }} </h2>
<div class="mb-4">
<div class="d-flex align-items-baseline">
<ins class="font-size-36 text-decoration-none">{{ $product ['prod_price'] }}</ins>
<del class="font-size-20 ml-2 text-gray-6">$2,299.00</del>
</div>
</div>
@endsection
这是我的路线。
web.php
Route::get('/singleproducts', 'SingleProductController@index')->name('singleproducts');
Route::get('/singleproducts/{id}', 'SingleProductController@show')->name('eachproduct');
为什么我的显示功能不起作用?
解决方案
路由.php
Route::get('/singleproducts', 'SingleProductController@index')->name('singleproducts');
Route::get('/eachproduct/{id}', 'SingleProductController@show')->name('eachproduct');
产品列表页面
@if (isset($products) && count($products) > 0)
@foreach ($products as $product)
<div class="blog_box_inner" style="cursor: pointer;" >
<h1 class="blog_inner_heading">
<a href="/eachproduct/{{$product['id']}}" class="blog_readmore_link">
{{$product['prod_name']}}
</a>
</h1>
</div>
@endforeach
@endif
单页
<h2 class="font-size-25 text-lh-1dot2">{{ $product['prod_name']}} </h2>
控制器
public function index() {
$products = Product::orderBy('id', 'DESC')->get();
return view('')->with(compact('products'));
}
public function show($id) {
$product = Product::find($id);
return view('')->with(compact('product'));
}
完全希望它对您有帮助。
推荐阅读
- python - Python 统计出现次数
- python - python中基于csv字典命名文件
- html - 如何并排放置 2 个小部件?最终代码赞赏,因为我不是编码器
- parallel-processing - 如何处理大文件?
- sql-server - 如何在 Azure SQL 中检查 UNIQUEIDENTIFIER 值的默认值?
- python-3.6 - 为什么我不能在这段代码中打印 x 的值?
- python - Python - 无法导入 sklearn,但适用于其他包
- bash - Shell 脚本:等待组中的任何进程完成
- python - QtDesigner 布局不拉伸(预览不同于 GUI)
- django - 在管理员中显示 django 模型属性