Magento2 Bestellung nach Klausel in Sammlung


13

Ich habe eine benutzerdefinierte Sammlung, zu der ich Filter hinzufüge. Zum Beispiel habe ich Folgendes:

$giftColletion = $this->_giftFactory->getCollection();
$giftColletion->addFieldToFilter('store_id', 1);

Was Filter sollte ich auf $ giftColletion hinzuzufügen , so dass alle die Datensätze nach Feld zurückkehren Position in ASC bestellen?

Antworten:


34

Sie können dies versuchen

$giftColletion = $this->_giftFactory->getCollection();
$giftColletion->addFieldToFilter('store_id', 1);
$giftColletion->setOrder('position','ASC');

setOrder wird zum Sortieren verwendet


2

Entsprechend \Magento\Catalog\Model\ResourceModel\Product\Collectionkönnen Sie addAttributeToSort()Methode verwenden, um Ihre Sammlung zu sortieren.

Das hat bei mir funktioniert:

$ collection = $ this -> _ collection
    -> create ()
    -> addAttributeToSelect (['sku', 'name', 'image'])
    -> addCategoryFilter ($ category)
    -> addAttributeToSort ('name')
    -> setPageSize ($ limit);
$ collection zurückgeben;

Verwenden Sie das Attribut, nach dem Ihre Sammlung sortiert werden soll, anstatt 'name'in meinem Beispiel. Sie können auch die Auftragsrichtung als zweiten Parameter angeben, der standardmäßig verwendet wird ASC.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.