你好,只是一个新手的问题,我只是要查询这两个表,我希望第二个表位于另一个表的数组内。
桌子看起来像这样
bulletin
|d : 1"|
|content: "test"|
|id : 2|
|content: "test2"|
图片
|id : 1|
|bulletin_id: 1|
|upload_name: 1.jpg|
|id : 2|
|bulletin_id: 1|
|upload_name: 2.jpg|
|id : 3|
|bulletin_id: 2|
|upload_name: 3.jpg|
|id : 4|
|bulletin_id: 2|
|upload_name: 2.jpg|
我的查询如下
$bulletin = DB::table('bulletin')
->select('bulletin.id','content','upload_name')
->join('images', 'images.bulletin_id', '=', 'bulletin.id')
->get();
是否有可能使数据看起来像这样
array
(
id:1,
content:test,
upload_name:array
(
1.jpg,
2.jpg
)
)
答案 0 :(得分:1)
首先定义您的模型。
php artisan make:model Bulletin
php artisan make:model Image
App \ Bulletin.php
protected $table = 'bulletin';
然后建立关系:
App \ Bulletin.php
use Image;
//
public function upload_name()
{
return $this->hasMany(Image::class);
}
所以现在您可以查询对象:
app \ Http \ Controllers \ BulletinController.php
public function index()
{
$bulletins = Bulletin::with('upload_name')->get();
return $bulletins;
}