2017-01-20 6 views
1

mit der Erstellung Ich bin ziemlich neu in yii2, ich bin mit Postgres, meine db.php Datei -Fehler während Tabelle Yii2 Migration

return [ 
     'class' => 'yii\db\Connection', 
     'dsn' => 'pgsql:host=localhost;port=5432;dbname=xxxx', 
     'username' => 'postgres', 
     'password' => 'abc', 
     'charset' => 'utf8', 
]; 

ich in Postgres einen Tisch direkt erstellen haben und holte die Daten erfolgreich verwendet . Dann ging ich mit

./yii migrate/create logins 

mit Migration eine Tabelle für die Erstellung, die erfolgreich eine Datei in der Migration Ordner erstellt, setzen Sie dann folgenden i Inhalt in up Methode -

public function up() 
{ 
    $this->createTable('logins', [ 
      'id' => Schema::TYPE_PK, 
      'name' => Schema::TYPE_STRING . ' NOT NULL', 
      'password' => Schema::TYPE_STRING . ' NOT NULL' 
    ]); 
} 

und feuerte ./yii migrate eine Datenbank zu aktualisieren , aber ich bekomme folgenden Fehler -

Yii Migration Tool (based on Yii v2.0.10) 
Exception 'yii\db\Exception' with message 'could not find driver' 
in /opt/lampp/htdocs/project/server/api/project/vendor/yiisoft/yii2/db/Connection.php:549 

Gibt es irgendeinen Schritt, den ich vermisse? oder gibt es ein problem in der postgres-verbindung?

+0

Haben Sie die 'db' Komponente in Ihrer Konsolenanwendung konfiguriert? – Bizley

+0

nein ich habe nicht, können Sie mir sagen, wie das zu tun ist – Shrikant

Antwort

2

Ich nehme an, das ist grundlegende Vorlage.

Stellen Sie sicher, dass Sie die Komponente db konfiguriert haben.

In Ihrer config/console.php Datei zu überprüfen, ob es db Schlüssel in components Abschnitt wie:

// ... 
'components' => [ 
    // ... 
    'db' => require(__DIR__ . '/db.php'), 
    // ... 
], 

Wenn alles mit ihm in Ordnung ist, aber Fehler vorhanden sind, noch müssen Sie überprüfen, ob Sie pgsql Treiber richtig installiert bekommen haben.

Weitere Informationen finden Sie unter PDO Installation.

+0

Danke für die Antwort, ja es gibt bereits eine Komponente wie diese – Shrikant

+0

So überprüfen Sie, ob der Treiber installiert ist, siehe meine Antwort aktualisiert. – Bizley

+0

danke für das Zeigen in eine richtige Richtung – Shrikant

Verwandte Themen