未获取关系数据

问题描述 投票:0回答:1

我的模型代码如下。

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes;

class Listing extends Model
{
    use HasFactory, SoftDeletes;

    public function images(): HasMany
    {
        return $this->hasMany(ListingImage::class, 'id', 'listing_id');
    }

    public function listingItems()
    {
        return $this->hasMany(ListingValue::class,'id', 'listing_id');
    }
}

我正在尝试获取如下数据。

$data = Listing::with(['listingItems' => function ($query) {
            $query->select('name as item_name');
        }])->select('*')->get();
        

dd($data);

但是我没有得到相关数据。

laravel
1个回答
0
投票

因为是关系型数据,所以需要id。

$data = Listing::with(['listingItems' => function ($query) {
        $query->select('id', 'name as item_name');
    }])->select('*')->get();
© www.soinside.com 2019 - 2024. All rights reserved.