在laravel 5.6中雄辩地返回null值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在laravel 5.6中雄辩地返回null值相关的知识,希望对你有一定的参考价值。

我在做一个简单的逻辑。我有2个表,attribute_type和attribute_sub_type。在AttributeSubType模型中,我创建了这个函数。

 public function attribute_types()
{
    return $this->belongsTo('AppModelsAttributeType');
}

在AttributeType模型中,我创建了这个函数。

public function attribute_sub_type()
{
    return $this->hasMany('AppModelsAttributeSubType');
}

我的观点是:

@foreach($attributeSubTypes as $attributeSubType)
    <tr>
        <td>{!! $attributeSubType->attribute_types['attribute_type'] !!</td> //this line returning null by dd($attributeSubType->attribute_types['attribute_type'])
    </tr>
@endforeach

其中'attribute_type'是attribute_type表中的列。我在另一个项目中使用了相同的逻辑。这就像魅力一样。

答案

我通过在AttributeSubType模型中创建此方法解决了该问题。

public function getAttributeType($id)
{
    $attribute = AttributeType::find($id);

    return $attribute->attribute_type;
}

这就是我在View中称之为的方式。

@foreach($attributeSubTypes as $attributeSubType)
    <tr>
        <td>{!! $attributeSubType->getAttributeType($attributeSubType->attribute_type_id) !!}</td>
</tr>
@endforeach

以上是关于在laravel 5.6中雄辩地返回null值的主要内容,如果未能解决你的问题,请参考以下文章

laravel 雄辩的关系一对多返回 null

如果 id 不为 null 则返回,laravel 雄辩

Laravel 5.6 |雄辩的一对多关系

orWhere 不使用 Laravel 雄辩的关系查询

Laravel 雄辩地搜索相关模型的字段

雄辩的关系:只返回一个值而不是整行