Có cách nào để dễ dàng sao chép một đối tượng Eloquent, bao gồm tất cả các mối quan hệ của nó không?
Ví dụ: nếu tôi có các bảng này:
users ( id, name, email )
roles ( id, name )
user_roles ( user_id, role_id )
Ngoài việc tạo một hàng mới trong users
bảng, với tất cả các cột đều giống nhau id
, ngoại trừ , nó cũng nên tạo một hàng mới trong user_roles
bảng, gán vai trò tương tự cho người dùng mới.
Một cái gì đó như thế này:
$user = User::find(1);
$new_user = $user->clone();
Trường hợp mô hình Người dùng có
class User extends Eloquent {
public function roles() {
return $this->hasMany('Role', 'user_roles');
}
}