小编Mik*_*rys的帖子

访问Eloquent关系属性

我有三个模型都是一对多相关的.类别,子类别和风格.我有两种方式的关系 - 虽然我似乎在访问相关属性时遇到问题.

在我的查询运行之后,我留下了这个Style的实例,其中'relations'是Subcategory的一个实例,而Subcategory中的'relations'是Category的一个实例.这一切都是正确的.

问题是我现在似乎无法访问相关的模型实例.例如,如果我打电话:

$style->subcategory->name;
Run Code Online (Sandbox Code Playgroud)

我得到'试图获得非对象的财产'.所以我尝试只调用$ style-> subcategory,结果为'1'.

为什么$ style-> subcategory不返回子类别模型的实例?我错过了什么或者我的理解不正确吗?

- 编辑 -

楷模

类别

<?php

namespace Paragon\Products;

use Illuminate\Database\Eloquent\Model as Eloquent;

class Category extends Eloquent {

    protected $table = 'product_categories';

    protected $fillable = [
            'name',
            'slug',
            'image'
    ];

    public function subcategories() {
            return $this->hasMany('Paragon\Products\Subcategory', 'category');
    }

}
Run Code Online (Sandbox Code Playgroud)

子目录

<?php

namespace Paragon\Products;

use Illuminate\Database\Eloquent\Model as Eloquent;

class Subcategory extends Eloquent {

    protected $table = 'product_subcategories';

    protected $fillable = [
            'category',
            'name',
            'slug',
            'image'
    ];

    public function styles() { …
Run Code Online (Sandbox Code Playgroud)

php models laravel eloquent

3
推荐指数
1
解决办法
2万
查看次数

标签 统计

eloquent ×1

laravel ×1

models ×1

php ×1