Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取错误为:此集合实例上不存在属性[prod\u name]_Php_Laravel - Fatal编程技术网

Php 获取错误为:此集合实例上不存在属性[prod\u name]

Php 获取错误为:此集合实例上不存在属性[prod\u name],php,laravel,Php,Laravel,当我在Laravel中创建“添加到购物车”页面时,出现了一个错误 Exception Property [prod_name] does not exist in this collection instance. (View: C:\xampp\htdocs\bizzcomputer\resources\views\cart.blade.php) 这是我的手推车控制器 <?php namespace App\Http\Controllers; use Illuminate\Http

当我在Laravel中创建“添加到购物车”页面时,出现了一个错误

Exception
Property [prod_name] does not exist in this collection instance. (View: C:\xampp\htdocs\bizzcomputer\resources\views\cart.blade.php)
这是我的手推车控制器

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Product;
use App\Category;


class CartController extends Controller
{
    
    public function index()
    { 
         $products = Product::get();
         return view ('cart')->with(compact('products'));
    }

    
    public function create()
    {
        //
    }

    
    public function store(Request $request)
    {
        //
    }

    
    public function show($id)
    {
       $product = Product::find($id);
        return view('cart')->with(compact('product'));
   }

    
    public function edit($id)
    {
        //
    }

    
    public function update(Request $request, $id)
    {
        //
    }

  
    public function destroy($id)
    {
        //
    }
}

可能是什么问题?有人请引导我找到这个吗?

集合中有许多产品
$products
,您需要在它上循环以获取
产品名称

@foreach($products as $product)
    <td data-title="Product">
        <a href="#" class="text-gray-90">{{ $product->prod_name }}</a>
    </td>
@endforeach
@foreach($products作为$product)
@endforeach

当我添加foreach函数时,它会显示所有产品。@Zeenath,这很正常,因为$products包含所有产品<代码>$products=Product::get()公共函数show($id){$products=Product::get();返回视图('cart')->with(compact('Product');}但问题在于
索引和
show
两个函数使用相同的视图。但两者都不一样。此外,您还定义了两个相同的命名路由,两者将不同
web.php

Route::get('/cart/{id}', 'CartController@show')->name('cart');
Route::get('/cart', 'CartController@index')->name('cart');
@foreach($products as $product)
    <td data-title="Product">
        <a href="#" class="text-gray-90">{{ $product->prod_name }}</a>
    </td>
@endforeach