首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel 9多个数据库连接

Laravel 9多个数据库连接
EN

Stack Overflow用户
提问于 2022-07-06 09:09:16
回答 1查看 460关注 0票数 0

你好,我在注册一个新用户时出错了。我有两个数据库连接:第一个(默认) oracle用于get数据,第二个mysql用于用户登录、注册。

因此,我在database.php中设置了默认的oracle (因此不必每次都使用connection()方法)。

在模型User.php中,我放置了这一行代码,所以登录指向mysql,我可以登录

代码语言:javascript
复制
protected $connection = 'mysql';

在我尝试注册另一个用户之前,一切都很好--我得到了一个错误,因为注册指向默认的oracle。我可以通过再次将默认值切换到mysql来避免这个问题,但这不是我所需要的方式。

我还错过了什么?如何将注册指向mysql db?

在database.php 'default' => env('DB_CONNECTION_ORA', 'oracle'),

我试图在Schema用户创建中添加连接(“mysql”),但它仍然指向默认设置。

RegisterController.php

代码语言:javascript
复制
class RegisterController extends Controller

{

代码语言:javascript
复制
 Register Controller



use RegistersUsers;


protected $redirectTo = RouteServiceProvider::HOME;
protected $connection = 'mysql';


public function __construct()
{
    $this->middleware('guest');
}

/**
 * Get a validator for an incoming registration request.
 *
 * @param  array  $data
 * @return \Illuminate\Contracts\Validation\Validator
 */
protected function validator(array $data)
{
    return Validator::make($data, [
        'name' => ['required', 'string', 'max:255'],
        'email' => ['required', 'string', 'email', 'max:255', 'unique:users'],
        'password' => ['required', 'string', 'min:8', 'confirmed'],
    ]);
}

/**
 * Create a new user instance after a valid registration.
 *
 * @param  array  $data
 * @return \App\Models\User
 */
protected function create(array $data)
{
    return User::connection('mysql')->create([
        'name' => $data['name'],
        'email' => $data['email'],
        'password' => Hash::make($data['password']),
    ]);
}

}

EN

回答 1

Stack Overflow用户

发布于 2022-07-06 09:27:36

我认为你在使用CREATE方法。试试这个,也许对你有用:

代码语言:javascript
复制
$user = new User;
$user->setConnection('your-another-db');
$user->name = $request->name;
...
...
...
$user->save();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72880745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档