$query = UserSubject::where('user_id', Auth::id())->select('subject_id')->get();
正如预期的那样,我得到以下结果:
[{"user_id":8,"subject_id":9},{"user_id":8,"subject_id":2}]
有没有办法将上面的结果复制到另一个表中,以便我的表看起来像这样?
ID|user_id|subject_id
1 |8 |9
2 |8 |2
我遇到的问题是$query可以预期任意数量的行,因此我不确定如何遍历未知数量的行.
解决方法:
使用Eloquent或查询构建器在Laravel中进行批量插入非常容易.
您可以使用以下方法.
$data = array(
array('user_id'=>'Coder 1', 'subject_id'=> 4096),
array('user_id'=>'Coder 2', 'subject_id'=> 2048),
//...
);
Model::insert($data); // Eloquent approach
DB::table('table')->insert($data); // Query Builder approach
在您的情况下,您已经拥有$query变量中的数据.