繁体   English   中英

Laravel 调用未定义的方法 App\\Seo::mapInto()

[英]Laravel call to undefined method App\Seo::mapInto()

当我尝试使用它返回的资源获取我的产品 SEO 数据时

Call to undefined method App\Seo::mapInto()

代码

seo model

public function seoable()
{
  return $this->morphTo();
}

product model

public function seo()
{
  return $this->morphOne(Seo::class, 'seoable');
}

product resource

'seo' => SeoResource::collection($this->whenLoaded('seo')),

我最好的猜测是导致此错误的SeoResourcecollection ,但不确定是否应该将其更改为?

任何的想法?

问题是您使用了SeoResource::collection($this->whenLoaded('seo'))但您只有一个元素而不是一个集合。

因此,您可以像这样用new SeoResource($this->whenLoaded('seo'))替换它:

代替:

'seo' => SeoResource::collection($this->whenLoaded('seo')),

和:

'seo' => new SeoResource($this->whenLoaded('seo')),

暂无
暂无

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

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