プロジェクトにはマルチデータベースの概念が必要です。私はリアルタイムでユーザーを作成し、その新しいユーザーの新しいデータベースを自動的に作成します。その新しいユーザーのログインはマスターデータベースからユーザーデータベースに切り替わりました。これを行う方法..私は幼虫5.4バージョンを試しています。
1.新しいユーザーのためにリアルタイムでデータベースを作成する方法は?
2.ユーザーログインマスターデータベースをユーザーデータベースに切り替える方法は?
スキーマを作成してリアルタイムで移行できます。これは以前プロジェクトで行ったことがあります。以下を使用してください
DB::connection('mydb')->statement(DB::raw('CREATE DATABASE....BLAH BLAH BLAH'))
新しいデータベースを作成するための生のクエリを実行します。これらのクエリを実行するには、マスター接続が必要です。
次に、を使用Artisan::call('migrate', ['--database' => 'newdb'])
して移行し、オプションでシードすることができます。
最後に、データベース構成ファイルに、ユーザーが接続するスキーマを決定するcustomersエントリを含めるか、を使用してこのリアルタイムを設定する必要がありますConfig::set(['my.user.db.config')
。
顧客向けに一意のデータベースを作成するための私の戦略は、データベース名としてGUIDを使用し、そのマスターログをマスターデータベースに保持することでした。ユーザーがログインすると、データベース名がマスターから読み取られ、アプリケーションはその場で接続を切り替えます。私の会社には、123151-2135151-5132123-545-231231のような名前の小さな顧客データベースが何百もあります。
それは非常に複雑で、動く部分がたくさんありますが、それはあなたが始めるのに役立ちます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加