データベースフィールドをモデルに追加し、varien_data_formを使用して編集可能にします

magento.stackexchange https://magento.stackexchange.com/questions/15922

質問

拡張機能にモデルがあります。新しいデータベース属性を追加し、varien_data_formを使用してMagento管理者を介してこの値を編集可能にしたいと思います。インストーラースクリプトを介してデータベースにフィールドを追加しました。フィールドは管理者に表示されますが、保存方法がわかりません。

フォームデータが投稿され、$データ変数に保存され、モデルはロードされ、setData($ data)が呼び出され、その後モデルは保存されますが、役に立ちません。 setData()コールの直前に$データをダンプして、変数が問題ないことを示します。

保存はトライブロック内で発生し、エラーはスロー/キャッチされません。

...

$model = Mage::getModel('cmspro/category');
$model->setData($data)->setId($this->getRequest()->getParam('id'));

...

try {

...

$model->save();

...

} catch (Exception $e) {

...

}
役に立ちましたか?

解決

テーブルの構造を変更した後、キャッシュをクリアします。
の内容を削除します var/cache.
キャッシュが無効になっていても、テーブルスキーマはZendフレームワークによってまだキャッシュされています。

ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top