2012-04-03 6 views
7

リソースに関しては、Magentoの中核に2つのスタイルのフォルダ構造があるようです。 mysql4フォルダーを使用して、他の単純なリソースフォルダーを使用してかなりたくさんあります。Magentoモジュールの規約mysql4またはリソース

I.e.インストールスクリプトはMycompany_Mymodule_Model_Resource_Setupにあります。

これには理由がありますか、それともそうでないのですか?これは単に異なるコア開発者の間のコーディングスタイルですか?

答えて

16

最初にMagentoのフォルダ構造があるそのオートローダーの実装のためです。あなたがMagentoにファイルが置かれている場所からあまりにも多くの意味を導き出そうとすると、あなたは気違いに行きます、そして、異なったモジュールは異なった慣習に従うようです。オートローダは、だから私は、ファイルを特定のフォルダにある理由を間接的に取り組むれ、以下の命名規則について話されます

Mage/Core/Model/Foo/Bar.php 

Mage_Core_Model_Foo_Bar 

を探します。

元々、すべてのデータベースリソースの名前はMysql4という名前でした。私はいくつかの元の開発者と話し合いましたが、そのリソースがその時点の「標準的な」Mysql 4データベース用であることを示すことを意図していました。リソースがMysql 5の特定の機能を使用していた場合、彼らはMysql5の規約を使用していました。

Magento Inc.が通常のスタートアップチャーンを経て、他の開発者が元の開発者が中断したところから引き継いだので、この考え方が変わりました。 Enterprise Editionが複数のRDBMSをサポートするための基盤となったMagento 1.6リリースは、これらのリソースがどのように機能し、名前が付けられたかを変更しました。

Backwards compatibilityは維持されたが、古いMysql4資源のほとんどが導入された複数のRDBMSをサポートするための汎用的なResource、およびnew methodを使用するために名前が変更されました。

+0

ありがとう - ありがとうアラン、私はそれが遺産になるとはかなり確信していた。 –

関連する問題