ErrorException
尝试获取非对象的属性"category_name"(视图:D:\examplep\htdocs\e-catalog\resources\views\backend\pages\gmproducts.blade.php(
这是我下面的刀片代码。
<tbody>
@foreach($gmproducts as $no => $gm)
<tr>
<td>{{$no+1}}</td>
<td>{{$gm->type}}</td>
<td>{{$gm->gmcategories->category_name}}</td>
<td>{{$gm->gram}}</td>
<td>{{$gm->carat}}</td>
<td>@currency($gm->price)</td>
<td><a class="test-popup-link" href="{{url('p_goldmart/'.$gm->file)}}">Preview</a></td>
<td>
<a href="/gmproducts/update/{{$gm->id}}" class="text-primary"><i class="fa fa-edit"></i></a>
<a href="/gmproducts/delete/{{$gm->id}}" class="text-danger"><i class="fa fa-trash-o"></i></a>
</td>
</tr>
@endforeach
</tbody>
这是我的模型Gmcacategories&Gmproducts。
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
class Gmcategories extends Model
{
protected $table = "gmcategories";
protected $fillable = ['category_name'];
public function gmproducts()
{
return $this->hasOne('AppGmproducts');
}
}
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
use IlluminateDatabaseEloquentSoftDeletes;
class Gmproducts extends Model
{
use SoftDeletes;
protected $table = "gmproducts";
protected $fillable = ['type', 'category_id', 'gram', 'carat', 'price', 'file'];
protected $dates = ['deleted_at'];
public function gmcategories()
{
return $this->belongsTo('AppGmcategories');
}
}
这是我的控制器。
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
use AppGmproducts;
use AppGmcategories;
use File;
class GmproductsController extends Controller
{
public function index()
{
$gmproducts = Gmproducts::orderBy('id', 'desc')->get();
$trash = Gmproducts::orderBy('deleted_at', 'desc')->onlyTrashed()->count();
return view('backend.pages.gmproducts', compact('gmproducts', 'trash'));
}
public function create()
{
$gmcategories = Gmcategories::all();
return view('backend.pages.create', compact('gmcategories'));
}
只是信息,我只是重命名我的模型和控制器。它有效果吗?谢谢
// Gmcategories model
public function gmproducts()
{
return $this->hasOne('AppGmproducts', 'category_id');
}
// Gmproducts model
public function gmcategories()
{
return $this->belongsTo('AppGmcategories', 'category_id');
}
您的BuildImage模型应该是
获取建筑图像的源类型。
public function type() {
return $this->hasOne('AppBuildingType',"id","source");
}
并且构建类型模型应该是
获取拥有该建筑类型的建筑图像。
public function buildingImage()
{
return $this->belongsTo('AppBuildingImage',"source","id");
}