我希望获得A类或B类产品的产品系列.我已经能够使用以下php代码成功获得这些产品:
$collection = Mage::getModel('catalog/product')
->getCollection()
->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
->addAttributeToFilter('category_id', array('in' => array('finset' => 4,19)))
->addAttributeToSelect('*');
Run Code Online (Sandbox Code Playgroud)
但是,如果产品同时属于类别4和19,则会显示错误:
Item (Mage_Catalog_Model_Product) with the same id "173" already exist
Run Code Online (Sandbox Code Playgroud)
这是因为集合中有一个重复的行.我正在努力寻找合适的代码来过滤掉集合中的任何重复行.解决方案必须是对值进行分组,或使用不同的,但我不知道如何前进.
我有一个网站设置为在compose.io上使用MongoDB实例.一切正常,除了我与compose.io和mongoDB的连接大约需要1.2秒才能连接.在我看来,这是非常慢的,特别是当对数据库发出几个查询时.
什么是可行的策略来提高连接速度,或其他策略,如缓存加速网络应用程序?或者在服务器上安装mongoDB的设置是否是更好的解决方案?
我在php上使用mongoclient连接到compose.io上的mongoDB.我使用以下代码连接:
new MongoClient('mongodb://username:password@candidate.6.mongolayer.com:10554,candidate.5.mongolayer.com:10690/database?replicaSet=set-xxxxxxxx');
Run Code Online (Sandbox Code Playgroud)