Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Korzystanie z aliasów kolumn w polu Siatka zamówienia sprzedaży

spróbujmy tego pierwszego kodu

public function setCollection($collection){
    parent::setCollection($collection);
    $collection->getSelect()->join(
        array('address_shipping' => $collection->getTable("sales/order_address")),
        'main_table.entity_id = address_shipping.parent_id AND address_shipping.address_type = "shipping"',
        array('address_shipping.postcode as shippingpostcode')
    );

    $collection->getSelect()->join(
        array('address_billing' => $collection->getTable("sales/order_address")),
        'main_table.entity_id = address_billing.parent_id AND address_billing.address_type = "billing"',
        array('address_billing.postcode as billingpostcode')
    );
}

Drugie _prepareColumns() jest tutaj,

protected function _prepareColumns(){
     $this->addColumn('shippingpostcode', array(
        'header' => Mage::helper('sales')->__('Shipping Postcode'),
        'index' => 'shippingpostcode',
        'filter_index' => 'address_shipping.postcode'
     ));

    $this->addColumn('billingpostcode', array(
        'header' => Mage::helper('sales')->__('Billing Postcode'),
        'index' => 'billingpostcode',
        'filter_index' => 'address_billing.postcode'  
    ));

return parent::_prepareColumns();

}

jeśli chcesz dowiedzieć się więcej o 'filter_index' , skomentuj w tym / out, a następnie spróbuj posortować w siatce dla kolumny kodu pocztowego. Zobaczysz inny wynik. Jeśli usuniesz filter_index , błąd w sortowaniu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Korzystanie z aplikacji klienckich MySQL

  2. Dane znakowe nie są przekazywane z php do jquery

  3. Jak przypisać wiele identyfikatorów do jednego wiersza w MySQL?

  4. Wykonanie funkcji ORDER BY RAND() zajmuje dużo czasu w mysql

  5. Przekształć wynik bazy danych w tablicę