2012-01-03 7 views
0

Magentoのコア設定テーブルに管理インタフェースを介して文字列を保存できるように、私が作成したMagentoモジュールがあります。文字列がバックエンドに保存されたときにメソッドを実行するためのオブザーバ設定があります。私は自分自身を殺して文字列を傍受し、データベースに保存する前にそれをエンコードしようとしています。Magentoイベント/ ObserverオブジェクトgetDataの問題

だから私のイベントがトリガされたとき、それは、これを実行します。出力は次のようになります

public function myModSaved($observer) 
{ 
    echo "<h1> WOWSERS IT ACTUALLY WORKED!!</h1>"; 

    $data = $observer->getData(); 
    print_r($data); 
} 

Array ([event] => Varien_Event Object ([_observers:protected] => Varien_Event_Observer_Collection Object ([_observers:protected] => Array ()) [_data:protected] => Array ([website] => [store] => [name] => admin_system_config_changed_section_mymodule_section) [_hasDataChanges:protected] => [_origData:protected] => [_idFieldName:protected] => [_isDeleted:protected] => [_oldFieldsMap:protected] => Array () [_syncFieldsMap:protected] => Array ()) [website] => [store] =>) 

今、私は入手できますどのようにデータベースに書き込まれているだけで1つの文字列がありますその文字列が保存される前に、その文字列をオブジェクトに追加してDBに保存します。

ありがとうございます! /データベース・アクセスの前と後の両方のデコードすべてのエンコーディングの世話をする

<backend_model>adminhtml/system_config_backend_encrypted</backend_model> 

:設定フィールドが定義されているあなたのsystem.xmlファイルで

答えて

2

は、この宣言を追加します。また、「パスワード」タイプフィールドを取得するには、これを使用することが慣例です。

<frontend_type>obscure</frontend_type>