Magento学习手记(第二天)

第二天:

Magento的后台有两种最主要的通用组件:Grid和Form。

基本上所有看到的列表表格都是Grid(继承自Mage_Adminhtml_Block_Widget_Grid),基本上所有看到的表单都是Form(继承自Mage_Adminhtml_Block_Widget_Form)。Magento的Grid是个非常好用的组件,用户只需要按照它的结构写法,指定数据源和需要显示的字段,组件会自动提供包括分页,排序,过滤,导出和批量处理等功能。

 

问题:问题就出在过滤这里。作为一个开源的系统,Magento需要考虑最大的通用性,所以在Grid组件的设计上,所有的文本框类型(Text)的字段列,过滤的时候都是模糊查询(like %XXX%),数据量小的时候,这都不是事,数据量大到一定程度,速度慢不说,每一次的过滤操作都是对数据库的一次摧残(效果详见Mysql的慢查询日志)。

 

 

product数据库分析:

1. 实体表:catalog_product_entity;

 

2. 属性类型关联表:通过entity_id关联,具体表如下所示:

    catalog_product_entity_decimal;

    catalog_product_entity_gallery;

    ...

    catalog_product_entity_varchar;

    其中,attribute_id对应属性表eav_attribute,entity_id对应catalog_product_

entity表的entity_id,value对应属性值表。

 

3. EAV表

属性表:eav_attribute;

属性值表:eav_attribute_group,eav_attribute_label,eav_attribute_option,eav_attribute_option_value,eav_attribute_set;

注意:eav_attribute_option和eav_attribute_option_value对应,attribute_id和eav_attribute对应。

 

4. EAV表实体(Entity):eav_entity_attribute,使用该表完成表关联,例如,attribute_group对用eav_attribute_group。

 

5. catelog_category_product:把产品与分类关联起来;

 

6. catelog_category_entity:分类表结构;

转载于:https://www.cnblogs.com/pisTol/p/Magento_study_note_2.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值