在模型中指定了紧急加载后,如何获取列名?
这是我要执行的操作的一个示例,但它不起作用。我似乎无法从渠道模型中选择任何列。
$query = Transaction::select('id', 'processing_time', 'uniqueId', 'paymentType', 'status', 'channel:uuid');
return $query->take(5)->get();
但是,如果我这样做,我将从交易和渠道中获得一切,因此关系就可以正常工作了。
$query = Transaction::limit(5);
return $query->get();
交易模型
protected $with = ['channel'];
public function channel() {
return $this->belongsTo(Channel::class, 'entityId', 'uuid');
}
渠道模型
public function transactions() {
return $this->hasMany('App\Transaction', 'entityId', 'uuid');
}
答案 0 :(得分:0)
$query = Transaction::with(['channels' => function($query){
$query->select('you', 'colums')
});
您可以像这样在“关系”中使用“选择”。
答案 1 :(得分:0)
在渠道模型中添加选择为
data <- readBin(to.read, integer(), size = 1, n = 784, endian="big")
答案 2 :(得分:0)
根据有关急切加载的文档:
When using this feature, you should always include the id column and any relevant foreign key columns
尝试:
$query = Transaction::select('id', etc.., 'channel:id,uuid');
或
$query = Transaction::select('id', etc..)->with('channel:id,uuid');