Я немного запутался, в чем разница между функциями addAttributeToFilter () и addFieldToFilter (). Я проверил основные файлы в magento. Но я не мог понять четкую идею. Потому что для некоторых коллекций в magento использовалась addAttributeToFilter (), а некоторые использовали addFieldToFilter (). Пожалуйста, любые разъяснения по этому вопросу будут очень полезны. Заранее спасибо.
источник
addAttributeToSelect()
противaddAttributeToFilter()
?addAttributeToSelect()
ссылается наSELECT
часть запроса и выбирает только определенные столбцы.addFAttributeToFilter()
используется для фильтрации коллекции и поэтому добавляется вWHERE
деталь.Что касается EAV, нет никакой разницы.
Мое предположение, хотя я могу ошибаться, заключается в том, что для EAV они используют именование атрибутов, поскольку каждый атрибут для фильтрации сам по себе является отдельным элементом, который имеет свои собственные настройки и т. Д. Где, когда EAV не используется, это просто еще один столбец на таблица базы данных и поэтому имя поля работает хорошо.
источник