[英]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.