Laravel Eloquent – 快速复制数据

  •  
  • 6个月前
  • 113 次阅读
  • 更新于 10小时前
laravel  

今天为大家介绍一个小有名气的Laravel Eloquent特征为 replicate() 方法。可以快速复制一切数据库中的某条数据,接下来我就用一个简单的小例子来演示这一特性

 

复制并修改其中的一部分数据

如果要修改其中的一部分数据,只需要将复制出来的对象赋值给一个变量,然后改变其中的数据再 save() 就可以了:

$article = Article::find(1)->replicate();
$article->title = 'Laravel 复制数据并修改标题';
$article->save();
dd(Article::all()->toArray());

 

复制模型及关系

将文章的标签也一同复制,文章与标签之间的关系我就不展示了,这里直接贴代码:

$article = Article::with('tags')->find(1);
$clone = $article->replicate(); // 复制关系
$clone->push();
foreach($article->tags as $tag) {
   $clone->tags()->attach($tag);
}

OK,今天的小技巧就到这里了,希望大家喜欢。  


   本站文章除注明转载/出处外,均为本站原创或翻译。若要转载但请务必注明出处,尊重他人劳动成果。    本文链接: http://james.dmzfa.com/articles/laravel-eloquent-kuai-su-fu-zhi-shu-ju

上一篇:记录一次重启服务器 redis 数据丢失问题

下一篇:Laravel View Composer 解决视图公共部分的...

文章评论 (1)发表评论

  • 昵       称:james
    评论内容:
    好666

    2019-09-09 16:00:26  回复

Top