繁体   English   中英

如何在 Laravel 8 中获得与 json 有一个 hasMany 关系的所有表格模型?

[英]How to get all models of a table with one hasMany relationship to json in Laravel 8?

目标
获取json格式的所有具有一定hasMany关系的所有模型数据。 我想,你也可以说:在 json 中包含 hasMany 关系数据的集合。
我有两个表: templatetemplate_field以及两个模型。

第一个 Model

class Template extends Model
{
    use HasFactory;

    /**
     * @return HasMany 
     */
    public function templateField(): HasMany
    {
        return $this->hasMany(TemplateField::class);
    }
}

第二 Model

class TemplateField extends Model
{
    use HasFactory;

    /**
     * @return BelongsTo 
     */
    public function template(): BelongsTo
    {
        return $this->belongsTo(Template::class);
    }
}

我能做的是: Template::all()->toJson() 但随后 templateField 数据丢失。

编辑
这行得通。

$collection = Template::with('templateField')->get();
$collection->toJson();

$collection = Template::with('templateField')->get();

return response()->json([
  'status' => true,
  'data'   => $collection
], 200);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM