【问题标题】:product detail page is not showing产品详情页面未显示
【发布时间】:2019-12-23 08:16:51
【问题描述】:

他试图通过单击产品列表页面上的产品来获取产品详细信息,当我单击产品链接然后在下一页 URL 很好 http://127.0.0.1:8000/product/2 但产品没有显示

控制器:

  public function productdetail(Request $request, Product $product)
  {
      return view('product.detail', compact('product'));
  }

路线:

   Route::get('/product/{product}','Admin\ProductController@productdetail')->name('product.productdetail');

detail.blade.php

   <form method="POST" action="{{ route('product.productdetail', $product->id) }}" enctype="multipart/form-data">
    @csrf

      {{ $product->product_name }}

  </form>

在收听页面 m 使用此链接查看详细页面:

  <a href="{{ route('product.productdetail', $product->id) }}" class="block2-name dis-block s-text3 p-b-5">

     {{ $product->product_name }}

    </a>

【问题讨论】:

  • 有什么错误吗?
  • 在您的控制器中提供dd($product)。 @dev
  • @RouhollahMazarei 没有错误
  • @mare96 dd 没有显示
  • url生成正确吗?

标签: laravel eloquent laravel-5.8


【解决方案1】:

好的,当您提供控制器和路由时,我发现问题出在哪里。

你得到了路由资源:

 Route::resource('product','ProductController'); 

还有你的路线详情:

Route::get('/product/{product}','Admin\ProductController@productdetail')->name('product.productdetail');

资源将提供相同的表演路线,因此您需要使用附加参数更改您的路线,例如:

Route::get('/product/{product}/details','Admin\ProductController@productdetail')->name('product.productdetail');

现在你可以指向那条路线,我认为现在可以工作了。

【讨论】:

  • 抱歉还是一样
  • {{ route('product.productdetail', ['id' =&gt; $product-&gt;id]) }} 试试这样。您是否使用了整个对象或 id? @dev
  • 两者都一个一个
  • 试试我在评论中提到的方法。你也可以试试{{ url('/product/', ['id' =&gt; $product-&gt;id]) }}
  • 嗯.. 你能提供你的控制器命名空间吗?因为您是在单独的文件夹中创建的控制器。我说的对吗?
猜你喜欢
  • 2015-04-29
  • 2017-06-14
  • 1970-01-01
  • 2019-06-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多