我有一个模型,我想使用一个集合来保存这些对象,而不仅仅是一个数组。我想知道是否需要创建自己的集合类,或者是否可以使用通用集合类。
这在 Magento 中可行吗?
对于收集工作,您需要按顺序:
yourmodel/Model/Mysql4/Youmodel/Collection.php 扩展了 Mage_Core_Model_Mysql4_Collection_Abstract。有了这个:protected function _construct()
{
$this->_init('modelname/model');
}
yourmodel/Model/Mysql4/Setup.php 扩展了 Mage_Eav_Model_Entity_Setup。在你的 config.xml 里有类似的东西
<models>
<you_model_name>
<class>you_model_name_Model</class>
<resourceModel>you_model_name_mysql4</resourceModel>
</you_model_name>
<you_model_name_mysql4>
<class>you_model_name_Model_Mysql4</class>
<entities>
<you_model_name><table>you_model_name</table></you_model_name>
</entities>
</you_model_name_mysql4>
</you_model_name>
现在只需调用:
Mage::getModel('yourmodel/yourmodel')->getCollection();