Мой запрос генерирующего из коллекции Magento являетсяMagento Load Collection Использование Заказывайте
$userModel = Mage::getSingleton('user/user')->getCollection()->addFieldToFilter('user_id', array('in' => array($User_Id)));
SELECT `main_table`.user_name FROM `user_table` AS `main_table` WHERE (user_id IN('1', '3', '2'));
Я хочу использовать этот запрос:
SELECT `main_table`.user_name FROM `user_table` AS `main_table` WHERE (user_id IN('1', '3', '2')) ORDER BY FIELD(user_id , 1,3,2);
Так что он будет отображать имя пользователя в том же порядке когда вводятся идентификаторы. т. Е. "1,3,2"
Какой метод используется в Magento для загрузки коллекции с использованием ORDER BY
?
Заранее благодарен!
Кроме того, если «Order By» не представляется возможным в коллекции Magento, это желательно, чтобы написать свой собственный пользовательский запрос, если есть несколько коллекций для загрузки и изменения их в соответствии с пользовательскими требованиями? – Slimshadddyyy
Возможный дубликат: http://stackoverflow.com/questions/3158424/how-to-add-order-by-when-loading-a-magento-model – seanbreeden
@seanbreeden function setOrder ($ attribute, $ dir = 'desc ') использует параметр ASC или DESC, а то, что я обсуждаю, - это моя функция sql, которая является ORDER BY FIELD (http://jonahellison.com/mysql-order-by-field-group_concat). Так можно ли использовать функцию выше mysql для упорядочивания данных в соответствии с пользовательской потребностью usign Magento Collection? – Slimshadddyyy