2013-08-19 75 views
10

我敢肯定,必须有做到以下几点更快的方法。我无法找到任何有关如何将laravel模态对象保存为新行而不覆盖现有项目的任何信息。从本质上讲,我现有的代码更简单:Laravel4复制/复制表行

$oldItem = Item::find(1); 
$newItem = new Item; 
$newItem->key = $oldItem ->key; 
$newItem->name = $oldItem ->name; 
$newItem->path = $oldItem ->path; 
$newItem->save(); 

相反,复制一切,但该行的ID:

$oldItem = Item::find(1); 
$newItem = $oldItem; 
unset($newItem->id); 
$newItem->save(); 

回答

32

您可以尝试

$newItem = Item::find(1)->replicate()->save(); 
+0

就看准了这一方法,谢谢! – kilrizzy

+1

是否有可能取消设置像$本期特价货品值1> IMG –

+4

您可以使用: '$的newitem =项目::发现(1) - >复制();未设置($ newItem-> IMG); $ newItem-> save();' – groovenectar