繁体   English   中英

在laravel 5.6中无法获得正确的视图

[英]Can't get the right view in laravel 5.6

“未定义的变量:Pro(视图:E:\\ xampp \\ htdocs \\ mypro \\ resources \\ views \\ folder \\ product.blade.php)”我正在使用laravel 5.6尝试从现有数据库中获取数据。

产品型号

       <?php

        namespace App;

        use Illuminate\Database\Eloquent\Model;


        class Product extends Model
        {


            protected $table='products';
            protected $primaryKey = 'p_id';


            protected $fillable = ['p_title', 'p_element', 'p_description',          'p_duration', 'p_amount', 'p_startDate', 'p_endDate', 'p_old_price', 'p_new_price', 'p_keyWords', 'p_category', 'p_status', 'prefertime'];

        }

产品总监

            namespace App\Http\Controllers;

            use Illuminate\Http\Request;

            class ProductController extends Controller
            {

                public function index()
                {
                   $pro=Product::all();
                    return view('Folder.product'), compact('pro'));
                }       
            }

Product.blade.php @extends('layouts.app')

    @section('content')

      <h1>Products</h1>

     <table style="width:100%">
      <tr>
        <th>ID</th>
        <th>Name</th>
      </tr>
      <tr>

       @foreach($Pro as $row)
        <td>{{$row['p_id']}}</td>
        <td>{{$row['p_title']}}</td>
       @endforeach
      </tr>
    </table> 


    @endsection

资本,您需要使用$ pro而不是$ Pro。

@foreach($pro as $row)
  <td>{{$row['p_id']}}</td>
  <td>{{$row['p_title']}}</td>
@endforeach

我希望它能起作用。

由于确定的专业人士没有大写字母,因此您应按以下说明更正。 您还应该在执行页面之前检查数组是否为空,否则您将发现更多错误。

另请注意,我已将您的移到了foreach中,这是使表格正确显示所必需的。

@section('内容')

  <h1>Products</h1>

 <table style="width:100%">
  <tr>
    <th>ID</th>
    <th>Name</th>
  </tr>


   @if(! empty($pro))
     @foreach($pro as $row)
     <tr>
       <td>{{$row['p_id']}}</td>
       <td>{{$row['p_title']}}</td>
    </tr>
     @endforeach
  @else
     <tr>
       <td colspan="2">No records</td>
    </tr>
  @endif
</table> 


@endsection

同样,在您的控制器中,视图应读取return view('Folder.product', compact('pro')); return view('Folder.product'), compact('pro'));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM