laravel - Laravel 6关系输出为数组而不是对象
问题描述
laravel 6.x 在一台支持数组的电脑上访问关系时,将输出作为数组而不是对象返回,而在另一台电脑上,它只支持对象。
class Category extends Model
{
public function parent() {
return $this->belongsTo(Category::class,'parent_id');
}
public function children() {
return $this->hasMany(Category::class,'parent_id');
}
}
在刀片页面上,可以像下面这样访问
@foreach ($categories as $category)
<tr>
<td >{{$category->parent['name']}}</td>
</tr>
@endforeach
解决方案
Eloquent模型实现了 ArrayAccess 。
所以$category->parent->name
应该和$category->parent['name']
.
它实际上不是一个数组,它只是可以像一个数组一样访问。
推荐阅读
- azure - 无法在 Azure 应用服务上启动 Kestrel 引发无法配置 HTTPS 端点异常
- c - 子进程在第一次迭代后不执行函数
- sql-server - T-SQL DATEDIFF 返回年份和月份
- php - 在最近的分隔符后格式化字符串
- powershell - OpenVPN命令行安装
- javascript - Firebase nodemailer - 快照数据问题
- php - 应该忽略少数数字的差异
- android - 从结果 google.com 打开应用程序,始终指向 WebView Android 的主页
- npm - 有没有办法检查安装了哪些版本的库?
- azure-data-factory - 如何列出和删除 Azure Data Lake Store Gen1 上的空文件夹