5

Magentoでプロジェクトを開始しています。私が最初に言っておきますが、私はMSの世界から来ており、これまでPHPを使用したことがありません。そして、非常に急速に追いついている間、私はphpnewbを定義しています。

モデル、リソースモデル、リソース、エンティティオブジェクトの違いと、それらがMagentoアーキテクチャでどのように関連しているかを理解することはできません。

私は何日もグーグルを試しましたが、ほとんど情報が見つかりませんでしたが、見つけたものは実際にはそれを説明していません!

4

1 に答える 1

20

Magentoは典型的なPHP開発とはほど遠いものであり、Magentoが物事と呼んでいるものは、他の人が呼んでいるものと常に一致するとは限りません。Magentoは、ご存知のとおり、モデルレイヤーを2つの部分に分割します。モデルはビジネスロジックを処理し、リソース部分はデータベースとの通信のみを処理します。理論は、データストアを決定した場合はそうではありませんでした。 PDOでアドレス指定できない場合は、それらを取り巻くロジックがなくても、別のリソースにスワップして処理/ロードおよび保存することができます。

magentoが持つ2つの異なるタイプのリソースはEntityとMysql4です。後者はかなり標準的なテーブルゲートウェイシステムであり、リソースはデータベース内のテーブルにマップされますが、前者はもう少し複雑です。ユーザーと開発者がカスタムフィールドを物事に追加するのを本当に簡単にするために、magentoの主要部分(製品、顧客、注文など)はすべて、エンティティ属性値システム(EAV)と呼ばれるもので表されます。値ごとに入力された列を持つよりも、キー(列名を参照)と値を持つ行があります。エンティティリソースは、これらのeavテーブルのデータを保持するフィールド配列へのマッピングを処理します。

ただし、強調するために、これはPHPアプリケーションの典型的なものとはほど遠いので、PHPを学ぶことを目的としている場合は、別のシステムを選択します。

于 2010-01-22T07:44:44.007 に答える