用这个扩展包的编辑场景有什么好的解决方式么? 
                            
                                                    
                        
                    
                    
  
                    
                    编辑场景下,前端调用的是图片url,然后比如删除了几张图片,又添加了几张图片,这种场景下怎么写相应的逻辑比较好?
以下是目前我所写的流程,感觉比较丑,@liyu001989 老师能否说下有没有更好的解决办法?
public function update(Request $request, User $user)
{
    $user->update($request->post());
    $user->getMedia('photos')->each(function ($item) {
        $item->setCustomProperty('is_delete', true);
        $item->save();
    });
    collect($request->post('photos'))->each(function ($item) use ($user) {
        if (isset($item['path'])) {
            // 如果有path属性,说明是新上传的文件
            $user->addMedia(Storage::path($item['path']))->toMediaCollection('photos');
        }else{
            // 否则是已经上传的文件
            $user->addMediaFromUrl($item['url'])->toMediaCollection('photos');
        }
    });
     $user->clearMediaCollectionExcept('photos',$user->getMedia('photos',['custom_properties.is_delete' !== true]));
     $user->save();
     return $this->created()
} 
           
         
                     
                     
             
         
           
           关于 LearnKu
                关于 LearnKu
               
                     
                     
                     粤公网安备 44030502004330号
 粤公网安备 44030502004330号 
 
推荐文章: