Laravel-从模型加载时获取列名
当在模型中指定了即时加载时,如何获取列名 这里有一个例子,我正在尝试做什么,但它不起作用。我似乎无法从频道模型中选择任何列Laravel-从模型加载时获取列名,laravel,eloquent,Laravel,Eloquent,当在模型中指定了即时加载时,如何获取列名 这里有一个例子,我正在尝试做什么,但它不起作用。我似乎无法从频道模型中选择任何列 $query=Transaction::select('id','processing_time','uniqueId','paymentType','status','channel:uuid'); return$query->take(5)->get() 您可以像这样在关系中使用Select。在通道模型中添加Select as public function chan
$query=Transaction::select('id','processing_time','uniqueId','paymentType','status','channel:uuid');
return$query->take(5)->get()代码>
您可以像这样在关系中使用Select。在通道模型中添加Select as
public function channel() {
return $this->belongsTo(Channel::class, 'entityId', 'uuid')->select(array('columns name you want to get'));
}
根据急装文件:
使用此功能时,应始终包括id列和任何相关外键列
尝试:
$query=Transaction::select('id',等,'channel:id,uuid')代码>
或
$query=Transaction::使用('channel:id,uuid')选择('id',等)->代码>在select语句中添加entityId列,然后它将检索通道关系的数据。尝试了该操作后,该操作不起作用,但如果在模型中指定了“with”,是否需要在控制器中再次指定以使其起作用?似乎有点多余。那么我该如何在查询中指定列呢?通道:uuid仍在返回未知列。
public function channel() {
return $this->belongsTo(Channel::class, 'entityId', 'uuid')->select(array('columns name you want to get'));
}