Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Collection sortieren geht nicht
 
evoleena
Jr. Member
 
Total Posts:  9
Joined:  2011-10-25
 

Hallo in die Runde

ich möchte gerne meine Sales/quote_item Collection sortieren, aber egal welche Variante ich nehme es kommt eine Fehlermeldung.
Das ist mein Codesnipsel dazu:

$test Mage::getModel(\\\\\\\'sales/quote_item\\\\\\\')
        ->
getCollection()
        ->
setQuote($quote)
         ->
addFieldToSelect(\\\\\\\'name\\\\\\\')
        ->
addFieldToFilter(\\\\\\\'quote_id\\\\\\\'$quote->getId())
        ->
addFieldToFilter(\\\\\\\'product_type\\\\\\\'\\\\\\\'simple\\\\\\\')
        ->
addFieldToFilter(\\\\\\\'parent_item_id\\\\\\\', array(\\\\\\\'null\\\\\\\'=>true ))
        
//->setOrder(\\\\\\\'name\\\\\\\', \\\\\\\'DESC\\\\\\\');
        
->addAttributeToSort(\\\\\\\'name\\\\\\\'\\\\\\\'ASC\\\\\\\');

Woran liegt das? Ich hoffe ihr könnt mir helfen.

Gruß
Evo

 
Magento Community Magento Community
Magento Community
Magento Community
 
tomtone
Member
 
Total Posts:  47
Joined:  2011-01-14
 

wichtiger als der CodeSchnippsel ist die Fehlermeldung smile

Wäre super wenn du die auch noch posten kannst, sonst weiß keiner welche fehlermeldung du bekommst. Die sind zumeist sehr aufschlussreich.

 
Magento Community Magento Community
Magento Community
Magento Community
 
evoleena
Jr. Member
 
Total Posts:  9
Joined:  2011-10-25
 

Die Fehlermeldung ist immer diese hier:

Call to undefined method Mage_Sales_Model_Resource_Quote_Item_Collection::addAttributeToSort()

Gruß
Evo

 
Magento Community Magento Community
Magento Community
Magento Community
 
evoleena
Jr. Member
 
Total Posts:  9
Joined:  2011-10-25
 

Habs nun hinbekommen. Wo der Fhler nun lag weiß ich nicht mehr so genau.
Habe nun aber noch eine andere Frage, wie kann ich nun über 3 Tabellen joinen?

Und zwar will ich zu meinen Quote Items die Kategorie ermitteln, damit ich die Collection zuerst nach KAtegorie und dann nach Produktnamen filtern kann

Also so sieht die SQL Anweisung aus die ich benötige:

SELECT *
FROM `sales_flat_quote_item` AS `mt`, catalog_category_product as t1,  catalog_category_entity_varchar as t2
WHERE 
(mt.product_id=t1.product_id) AND (t1.category_id=t2.entity_id) AND (quote_id '37') AND (quote_id '37') AND (product_type 'simple') AND (parent_item_id IS NULL) and t2.attribute_id=35
ORDER BY t2
.value ascmt.name ASC

mein Momentaner Code sieht so aus, aber mit dem 2.Join habert es da ich mir unsicher bin ob ich die varchar tabelle so angeben kann.

$test Mage::getModel('sales/quote_item')
        ->
getCollection()
        ->
setQuote($quote)
        ->
addFieldToFilter('quote_id'$quote->getId())
        ->
addFieldToFilter('product_type''simple')
        ->
addFieldToFilter('parent_item_id', array('null'=>true ))
        ->
setOrder('name''ASC')
        ->
load();
$test->getSelect()
      ->
join(
        
'catalog_category_product',
        
'main_table.product_id = catalog_category_product.product_id')
        ->
join(
        
'catalog_category_entity_varchar',
        
'catalog_category_product.category_id = catalog_category_entity_varchar.entity_id')
        ;
        ->
load();
 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top