使用Eloquent和多个数据库插入新记录的正确方法是什么。
存在多个数据库的原因是因为每个分片上存在有限数量的用户数据。验证后,他们的分片会在目录中查找,所有进一步的查询都在他们的分片上进行。
运行时:
$user = User::on('user-shard1')->create(array('name' => 'John'));
抛出以下异常:
Call to undefined method Illuminate\Database\Query\Builder::create()
我们是否以正确的方式实施Eloquent?
答案 0 :(得分:1)
您不能on
使用create
,因为Model
是on
上的静态方法,而Eloquent\Builder
则返回$user = new User;
$user->setConnection('user-shard1');
$user->fill(array(..));
$user->save();
。
所以改为:
{{1}}