我到处搜索,似乎无法获得正确答案。
请考虑以下课程
class A extends Model
{
protected $appends = ['encoded_name'];
public function getEncodedNameAttribute()
{
return "ABC_ENCODED_NAME";
}
}
class B extends Model
{
}
现在,这两个类通过一个列相关联。
我有一个将这两个表连接在一起的控制器,但是类B充当我的基表,如下所示:
$query = B::query();
$query = $query->join('a', 'a.id', '=', 'b.a_id');
$query = $query->select('a.*');
通过上面的查询,我可以通过简单地调用
来循环访问我的blade.php页面中的属性。$ a-> example_property;
但是,当我尝试访问appends
属性时,使用
$ a-> encoded_name;
它似乎无法正常工作。我错过了什么吗?
答案 0 :(得分:0)
因为$ appends仅与Eloquent一起使用,所以当您进行联接时,您的查询不再是雄辩的查询,而是现在的查询生成器。那就是为什么。
Create Proper具有一个或多个关系,并尝试相应地访问您的append属性。应该可以。