2013-03-18 4 views
0

Я хотел бы отсортировать Varien_Object в Magento с помощью настраиваемого атрибута.
я получил что-то вроде этого:Magento: Сортировка элементов коллекции данных Varien

$thing_1 = new Varien_Object(); 
$thing_1->setName('Richard'); 
$thing_1->setOrder(2); 

$thing_2 = new Varien_Object(); 
$thing_2->setName('Jane'); 
$thing_2->setOrder(1); 

$collection_of_things = new Varien_Data_Collection(); 
$collection_of_things 
    ->addItem($thing_1) 
    ->addItem($thing_2); 

Я хочу, чтобы отсортировать его ASC, так что Jane может быть перед Richard

Спасибо.

ответ

1

Varien_Data_Collection имеет метод сортировки, но этот метод визуализируется в SQL-запросе при выполнении.

public function setOrder($field, $direction = self::SORT_ORDER_DESC) 

если вы AddItems вручную, он будет добавлен с индексом в порядке, вы добавили их так, что вам нужно сделать это, чтобы отсортировать объекты первой затем добавить их в коллекцию данных

взгляд на этот вопрос Sort array of objects by object fields

+2

Хорошо спасибо за ответ. Я хотел избежать этого, но, похоже, у меня нет выбора. – Shadowbob

Смежные вопросы