5

我用 Magento 开始了一个项目。首先让我说,我来自 MS 世界,我以前从未使用过 PHP,虽然我很快赶上了我,但我是一个 php 新手。

我似乎不太了解模型、资源模型、资源和实体对象之间的区别以及它们在 magento 架构中的关系。

我已经尝试谷歌搜索好几天了,但我发现的信息很少,而且我发现的并不能真正解释它!

4

1 回答 1

20

Magento 远非 PHP 开发的典型,它所称的东西并不总是与其他人所称的一致。如您所知,Magento 将模型层分为两部分,模型处理业务逻辑,资源部分仅处理与数据库的对话——理论是,如果您决定使用不能使用 PDO 寻址,您可以交换不同的资源来处理/加载和保存,而无需任何围绕这些事物的逻辑。

magento 拥有的两种不同类型的 Resource 是 Entity 和 Mysql4 - 后者是一个非常标准的表网关系统,其中 Resource 映射到数据库中的表,前者稍微复杂一些。为了使用户和开发人员能够真正轻松地向事物添加自定义字段,magento 的主要部分(产品、客户、订单等)都由所谓的实体-属性-值系统 (EAV) 表示,而不是与每个值都有一个类型的列相比,您有一个带有键(cf 列名)和一个值的行。实体资源处理这些 eav 表到保存数据的字段数组的映射。

不过要强调的是,这远非典型的 PHP 应用程序,如果您打算学习 PHP,我会选择不同的系统。

于 2010-01-22T07:44:44.007 回答