laravel - Laravel 将图像路径附加到对象数组
问题描述
用于制作 api 以返回医生的所有图像
$images = Doctor::select('image')->get();
所以响应就像
`[
{ image: 111.png },
{ image: 222.png },
{ image: 333.png }
]`
然后我返回图像
return $images
我想在返回之前将路径附加到图像
我的路径/222.png
我可以用 for 循环来做到这一点,谢谢这增加了不必要的复杂性
他们用雄辩的方式做到这一点也是如此
解决方案
如果这就是您希望每次都获取图像列的方式,那么访问器是最佳选择。在您的Doctor
模型中:
public function getImageAttribute($value){
return 'mypath/'.$value;
}
如果您只想在这个地方使用它,那么您可以使用map
:
$images = Doctor::select('image')->get()->map(function($doctor){
$doctor->image = 'mypath/'.$doctor->image;
return $doctor;
});
你会得到你想要的结果。
推荐阅读
- java - 如何从 syslog4J 服务器向客户端发送响应?
- javascript - 如何根据绝对定位的元素高度动态更改边距
- google-apps-script - 使用JDBC驱动连接数据库
- python - 尝试创建具有随机坐标的合成图像(使用 PIL)并一次保存多个文件
- go - 从类型返回的类型的隐式接口
- python - 最后一个元素没有在 for 循环中运行
- python - 解析 Mix 数据日志文件
- puppet - Puppet 独立错误 - 未知资源类型:'testme_service::install'
- oim - DBUM 与 DBAT OIM 连接器用例
- spring - Spring Boot 2.4.x - @RefreshScope 不工作