php - 使用 'like' 的 Magento 属性过滤器未按预期运行

标签 php magento

我遇到了 addAttributeToFilter() 的问题它没有像我预期的那样工作。

$product = Mage::getModel('catalog/product');
...snip...
$simple_associated_collection = $product->getCollection()
  ->addAttributeToFilter('type_id', 'simple')
  ->addAttributeToFilter('sku',array('like'=>$configurable_product_sku.'_%'))
  ->load();

传入 4_%我希望得到

4_1
4_2

但我也明白了

42_1
420_1

目标是获取一组简单的产品,以便我可以在导入后将它们与其可配置的父级相关联。

我应该如何使用 LIKE得到与我在 MySQL 中相同的结果?

最佳答案

Magento 在这里没有错,_ 是一个通配符。

我使用 Nick 的评论来回应我所期望的 sql。

固定:

->addAttributeToFilter('sku',array('like'=>$configurable_product_sku.'\_%'))

关于php - 使用 'like' 的 Magento 属性过滤器未按预期运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8512556/

相关文章:

php - 解析 Excel 电子表格数据与 CSV 相比有何优势?

php - Apache不为不存在的URL返回404错误

php - Jwt token 如何在登录系统中真正起作用?

php - 在 magento 网格中添加自定义选择下拉列表

Magento:500内部服务器错误::后端>>系统>>工具>>备份

php - Laravel Mongodb 带日期的原始 mongo 查询

php - 在 cakephp3.0 内部错误的情况下强制用户注销

php - 如何在 magento 中获取父产品 ID?

php - 更新 max_input_vars 后仍收到 "Input Variables Exceeded 1000"错误

php - Codeigniter - SEO 友好的 URL 结构(Slug 实现)