如果 Laravel 模型中尚未存在,则填充关联的 morphMany 关系

问题描述

我有两个模型。一个帖子将有一个或多个与之相关的图像(上下文图像)。上下文图像也可以与许多其他模型相关联。在我定义 morphMany 关系的父模型中,如果没有,我想检查是否有任何上下文图像可用,我想创建一个(可能通过创建一个随机图像)并返回新创建的关联。我尝试了几种不同的方法,但由于 eloquents 急切加载,它们都会导致问题。

class Post extends Model                                                                    
    public function contextimages()                                
    {
      // Todo see if the context image is present if not 
      // create a new random context image and persist                                     
      return $this->morphMany(Contextimage::class,'context');     
    }                                                              
}   

class Contextimage extends Model
{
    use HasFactory;

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

上下文图像数据库迁移看起来像这样

            $table->id();
            $table->string('context_type');
            $table->bigInteger('context_id');
            $table->string('imageurl');

您能否提出实现这一目标的最佳方法

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)