2016-07-22 6 views
0

Ich versuche, eine Art "Zeitmaschine" zu entwickeln, die es dem Benutzer ermöglicht, die Datenbanken jedes Tages rechtzeitig zu "reisen" und sie schließlich zu verschmelzen ...Wie erstellt man eine neue Verbindung zur Laufzeit in Laravel 5?

Ich baue das auf In Laravel 5.2 denke ich, dass dies zu Beginn ein Laravel-Paket sein wird. Die Frage ist:

Wie kann ich eine neue Verbindungskonfiguration zur Laufzeit erstellen? Kann ich auf dieses Array zugreifen und eine neue Konfiguration hinzufügen und hoffe, dass Laravel später eine Verbindung zu ihm herstellen wird, wenn ich es verwenden werde? Wenn ja, wie kann ich dies in das Array schieben?

Ich habe für eine Weile gegoogled, aber alles, was ich gefunden habe, war im Zusammenhang mit der Verbindung zur Laufzeit wechseln.

Danke euch allen, jede Hilfe wird geschätzt!

+0

Sie möchten die Datenbank für die Laufzeit ändern. Recht ? – jaysingkar

+0

@jaysingkar das ist richtig! – Caius

Antwort

0

Sie können eine neue Verbindungskonfiguration zur Laufzeit mit der Middleware erstellen. In dieser speziellen Middleware müssen Sie eine neue Verbindung einrichten oder die Database ändern. Kannst du bitte mehr angeben?

+0

Ich möchte eine Methode haben, die ich von meinem Controller verwenden kann, die sein kann: $ Tm-> cloneDb (time()); wo es um die dump der db geht. Was ich brauche, ist zu wissen, ob ich zuerst die Daten ausgeben kann, dann eine neue Datenbank erstellen und dann zu der neuen Datenbank wechseln ... Hoffe, es macht Sinn ... – Caius

+0

Gemäß Ihrer Anforderung müssen Sie die folgenden Schritte befolgen \t 'Schritt 1 - Dump der tables' \t ' Schritt 2 - neue Datenbank auf fly erstellen und zu neuen db' \t \t \t \t 'Schritt 3 verbinden - erstellen Migrationstabelle und rufen Sie dann Migrationen Skript die Artisan verwenden: : call ('migrate', ['- Pfad' => "Migrationspfad"]); ' ' Schritt 4 - Einfügen von Daten in neu verbundene Datenbank' – Arvind

+0

Großartig! Vielen Dank! Ich werde es versuchen. Aber ich denke, dass es sicherlich funktionieren wird – Caius