我已经编写了一个模块来添加我自己的事件,在主页中我只想显示最新的事件。因此,在这种情况下,我必须通过查询添加顺序,但我无法做到这一点,它总是会引发致命的错误。
这就是我所做的。
$_offers = Mage::getSingleton('offerings/offerings')->getCollection();
这会返回所有记录,这里我可以设置过滤器选项,但我无法像这样添加排序顺序
$_offers = Mage::getModel('offerings/offerings')->getCollection()
->addAttributeToSort('offerings_id', 'DESC')
->setPageSize(5)
->setPage(1, 5);
甚至使用Mage :: getSingleton。问题是这里面临的问题。请帮帮我
答案 0 :(得分:2)
我没有花时间去测试,但我怀疑你需要做这样的事情:
$_offers = Mage::getModel('offerings/offerings')->getCollection()
->setOrder('offerings_id', 'DESC')
->setPageSize(5);
正如所指出的那样,EAV方法addAttributeToSort()
在这里不起作用。 setPage()
也不会setPageSize()
也一样好。
有很多教程和指南可以从中学到这些东西。艾伦的knowledgebase articles是这个主题的权威资源,你最好阅读并实践它。
答案 1 :(得分:0)
包含错误消息,人们可以开始帮助您。
我猜你是不是已经使用Module Creator来创建你的模块,它为你提供了一个默认的非eav模型和集合。 addAttributeToSort方法仅适用于EAV集合。
此处有关于各种排序选项的更多信息