【问题标题】:How can we show the product of different type separately?我们如何分别展示不同类型的产品?
【发布时间】:2021-04-05 19:03:33
【问题描述】:

我有两种产品。书和光盘。书有页数,cd 有播放长度。我保留了编辑、更新和删除的条件,它工作正常。在产品控制器的索引功能中,我显示了所有产品及其显示,但是当我需要在 product.blade.php 中显示它时,应该保持什么条件才能以不同的方式显示该产品。例如:如果产品是书,则应显示页码,如果是 cd,则应显示播放长度。数据库中的列对两者都是 papl。

ProductController.php

     public function index()
            {
                $products=product::all();
                
                return view('mainAdmin/products', ['products'=>$products]);
                
            }

public function show(Product $product)
    {
        if($product->type == 'Book') 
        return view('mainAdmin/bookProduct', ['product'=>$product]);

        if($product->type=='cd') 
        return view('mainAdmin/cdProduct', ['product'=>$product]);
        //return view('singleProduct', ['product'=>$id]);
    }

products.blade.php

 @foreach($products as $product)
   
      Title:{{ $product->title}}<br>
      Type:{{ $product->type}}<br>
      Firstname:{{ $product->firstname}}<br>
      Surname:{{ $product->surname}}<br>
      Price:£{{ $product->price}}<br>
      PageNumber:{{ $product->papl }}<br>
      <a href="{{ route('singleProduct',$product->id)}}" class="btn btn-primary">Show</a>
      <a href="{{ route('editProduct',$product->id)}}" class="btn btn-danger">Edit</a><br/>
      <p>--------------------------------------------------------------------------</p>
      
      @endforeach
   

数据库: enter image description here

【问题讨论】:

  • 什么不起作用?
  • 我无法显示 cd 产品类型的播放长度和书籍产品类型的页数。它只是列出了价值,而不是根据产品类型。
  • 你能提供你的控制器的存储方法吗?
  • @Sandhya 如果它被爱了然后标记 ir 给出它的答案

标签: mysql laravel view controller laravel-8


【解决方案1】:

你可以使用刀片@if @else

@foreach($products as $product)
   
Title:{{ $product->title}}<br>
Type:{{ $product->type}}<br>
Firstname:{{ $product->firstname}}<br>
Surname:{{ $product->surname}}<br>

@if ($product->type == 'cd')
Price:£{{ $product->price}}<br>
@endif

@if ($product->type == 'Book')
PageNumber:{{ $product->papl }}<br>
@endif

<a href="{{ route('singleProduct',$product->id)}}" class="btn btn-primary">Show</a>
<a href="{{ route('editProduct',$product->id)}}" class="btn btn-danger">Edit</a><br/>
<p>--------------------------------------------------------------------------</p>

@endforeach

参考链接https://laravel.com/docs/8.x/blade#if-statements

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多