Sto provando a utilizzare più connessioni al database su yii2 framework. Sotto il mio file db.php all'interno della cartella config, ho questo pezzo di codice:Connessione a più database su yii2
return [
'class' => 'yii\db\Connection',
'components' => [
'db1' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=new',
'username' => 'root',
'password' => 'password',
'charset' => 'utf8',
],
'db2' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=localhost;dbname=old',
'username' => 'root',
'password' => 'password',
'charset' => 'utf8',
],
],
];
Nel mio test.php nella cartella modelli, ho questo qui sotto ...
namespace app\models;
use Yii;
use yii\base\Model;
use yii\db\Query;
class GetAds extends Model
{
public function ads()
{
$test = Yii::$app->db1->createCommand((new \yii\db\Query)->select('*')->from('members'))->queryAll();
}
quando Provo ad accedere, ottengo questo messaggio di errore "Ottenere proprietà sconosciuta: yii \ web \ Application :: db1"
Come posso risolvere questo problema? Ho effettivamente seguito questa guida Multiple database connections and Yii 2.0
Dove ho sbagliato?
La cosa peggiore è, ho impostato per utilizzare un solo database ... e il mio modello, io uso questo codice ..
namespace app\models;
use Yii;
use yii\base\Model;
use yii\db\ActiveRecord;
use yii\db\Query;
class GetAds extends ActiveRecord
{
public static function tableName()
{
return 'ads_page';
}
public static function ads()
{
$count=(new \yii\db\Query)->from('ads_page')->count('*');
}
}
e ottengo questo errore
Database Exception – yii\db\Exception
could not find driver
↵
Caused by: PDOException
could not find driver
Perché usare yii2 così tanto? Ho seguire tutte da qui http://www.yiiframework.com/doc-2.0/guide-db-dao.html
si prega di aiutare
Mi sembra questo non ha nulla a che fare con Yii a tutti ... "non riusciva a trovare il driver" sembra più un errore 'PDO'. Sei sicuro che tutti i moduli php rilevanti siano installati? 'DOP' da solo non è sufficiente, ha bisogno di' mysqlnd' pure iirc – Blizz
@Blizz, grazie per il suggerimento, ho abilitato il pdo_mysql sotto le impostazioni PHP usando WAMP .... Questo risolve il problema PDO. – nodeffect
unisci la tua configurazione di db con altri array di configurazione? – Tony