2011-01-06 15 views
5

Wie erhalten Sie den Datenbanknamen von Magento?In Magento wie erhalten Sie den Datenbanknamen?

Ich habe Funktionen wie die unten gesehen, die den Tabellennamen bekommen können.

$orderItemTable = Mage::getSingleton('core/resource')->getTableName('sales/order_item');

Ich hatte gehofft, dass es irgendeine Art von Funktion wie folgt war:

für alle Ideen

Mage::getSingleton('core/resource')->getDatabaseName();

Vielen Dank im Voraus.

Antwort

15

Jedes Modul kann seine eigene Verbindung angeben, so dass Sie Recht haben, über ein Modell zu gehen.

$config = Mage::getResourceModel('sales/order')->getConnection()->getConfig(); 
// $config is an array 
$dbname = $config['dbname']; 

Wenn Sie eine etwas effiziente Art und Weise könnte daran interessiert ist nur in dem Standard sind sein:

$dbname = (string)Mage::getConfig()->getNode('global/resources/default_setup/connection/dbname'); 
+0

Die Um versucht Modell ist die Art, wie ich gehen möchte, aber ich bekomme den folgenden Fehler, wenn ich das obige versuche. Schwerwiegender Fehler: Aufruf zu undefinierter Methode Mage_Sales_Model_Mysql4_Order :: getConnection() – woot586

+3

Probieren Sie es stattdessen mit 'getReadConnection' oder' getWriteConnection' aus. – clockworkgeek

+2

Das ist es, nur für zukünftige Referenz für jeden, der diese Änderung liest $ config = Mage :: getResourceModel ('Verkauf/Auftrag') -> getConnection() -> getConfig(); zu Mage :: getResourceModel ('sales/order') -> getReadConnection() -> getConfig(); – woot586

Verwandte Themen