在构建了一些前端之后,我现在正在探索Magento管理员端的内部。我阅读了Alan Storm关于创建一个简单模型的文章(与EAV模型相反,我尚未做好准备)。
我的主要目标是创建一个模块,使用户能够上传和管理Magento安装的媒体,以便它可以在我在前端定义的一些模板中使用。因此,我会创建一个模型来跟踪某些媒体(图片)与某些类别,页面之间的关系。只是为了记录:我不喜欢EAV模型,他们吓唬我,所以除非绝对必要,否则不要以这种方式推动对话。谢谢:))
我还浏览了this article。 这是关于后端模型,我的问题是:
什么是后端模型?
它是仅在后端(admin)中使用的模型吗?我不知道那会有什么好处。如果有人可以告诉我一些有关它的信息,或者给我一些关于阅读内容以了解更多内容的提示,那就太棒了。
我告诉我想达到什么目标的原因是有人可以告诉我这些“后端模型”是否对我想要的重要。
谢谢!
答案 0 :(得分:5)
不要担心EAV,不要担心“后端模型”。在你完全理解它们的意义之前,你需要一些在战壕编程经验中。使用简单的Magento模型类和SQL查询可以完成很多工作。
轻量版:后端型号与前端 - 购物车/后端管理应用程序拆分无关。 “后端模型”处理将信息加载,存储和保存到数据存储(数据库)中。 “前端模型”是PHP代码,用于处理呈现用户界面元素以在Web浏览器中显示属性。这些术语在Magento的几个不同系统中使用,包括EAV和系统配置部分。
您链接的文章是在谈论EAV后端模型。同样,轻型版本:EAV模型的每个数据属性本身就是一个对象。例如,在更简单的系统中,您将产品的名称存储为字符串'Bicycle'
。在Magento中,您将产品属性对象分配给父EAV模型以获取名称。这样,用于将“名称”保存到数据库的代码可以与其他保存代码分开。
长话短说,这对你所追求的东西来说太过分了。
答案 1 :(得分:1)
在Magento后端属性模型用于在将数据放入数据库之前准备数据。该准备工作由beforeSave
方法完成。一个很好的例子是Mage_Eav_Model_Entity_Attribute_Backend_Datetime