Laravel 根据其他集合替换集合值

问题描述

两个集合:

$users = User::select('id','name')->get();

//outcome  [{"id":"1","name":"John"},{"id":"2","name":"Peter"}]

$orders = Orders::all();

//outcome  [{"id":"1","userid":"1"},"userid":"2"}]

如何修改 $orders 集合的“userid”值以替换为真实姓名而不是数字?我想在不修改数据库的情况下将其发送给查看。

$orders 的预期结果:

//outcome  [{"id":"1","userid":"John"},"userid":"Peter"}]

解决方法

$orders = Orders::with('user')->get();

在您的订单模型中:

public function user(){
return $this->belongsTo(User::class,'userid');
}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...