3 votes

Magento : Joindre la table de gauche dans la grille

J'essaie d'ajouter une grille dans laquelle je dois faire une jointure à gauche.

protected function _prepareCollection()
{
    $collection = Mage::getResourceModel('admin/user_collection')->join("school/school",'ref_id = referer_id',"school_name",**"left"**);
    var_dump((string)$collection->getSelect());

    $this->setCollection($collection);
    return parent::_prepareCollection();
}

Même si j'ai défini "gauche", quand je vois la décharge, elle apparaît :

SÉLECTIONNER main_table .*, school/school . school_name DE admin_user AS main_table INNER JOIN school AS school/school ON ref_id = referer_id

J'ai essayé de faire un $collection = Mage::getResourceModel('admin/user_collection')->**joinLeft**("school/school",'ref_id = referer_id',"school_name","left");
mais pour lequel mon système ne me montre pas de hangs var_dump.

7voto

Max Points 4366

Essayez getSelect() avant le join

0voto

Avec la collection de produits si vous voulez placer une condition OR entre les attributs.

$collection = Mage::getModel('catalog/product')->getCollection();
  $collection->addAttributeToFilter(
    array(
      array('attribute'=>'my_attribute', 'eq'=>'0'),
      array('attribute'=>'my_other_attribute', 'neq'=>'0')
    ),
    '',
    'left'
  );

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X