2017-10-12 1 views
0

Ich entwickle ein Multi-Tenant LMS in yii2. Alle Mieter haben ihre jeweiligen Benutzerkonten. Um sich jedoch am System anzumelden, sollte dieser Benutzer auch in der Hauptdatenbank, der Benutzertabelle, vorhanden sein. Also muss ich die Benutzerkonten in beiden Datenbanken replizieren.Multitenant Saas eingebaut in yii2

Antwort

1

Stattdessen replizieren von der Benutzer-Tabelle Sie einfach eine gemeinsame Tabelle für Benutzer der Zugriff auf die gemeinsame db redifining die Tabellenname() Funktion .. .. und Manager

class MyUserClass extends \yii\db\ActiveRecord 
    { 
     /** 
     * @inheritdoc 
     */ 
     public static function tableName() 
     { 

      return 'common_database.' 'user_table'; 
     } 

....

schaffen könnte
class MyTenancyModel extends \yii\db\ActiveRecord 
    { 
     /** 
     * @inheritdoc 
     */ 
     public static function tableName() 
     { 

      return 'my_tenancy_table'; 
     } 
+0

Danke für den Vorschlag. Ich habe das Konzept verstanden, von dem du sprichst. Aber was nutzt MyTenanceModel hier? –

+0

für MyTenancyModel Ich meine jedes Modell, das in der Mandantenfähigkeit verwaltet wird. Alias ​​jede Tabelle/jedes Modell, das Ihre Multi-Tenancy-Anwendung verwendet – scaisEdge

+0

Okay. Vielen Dank. Werde das sicherlich versuchen. –