Je modifie la grille de commande en ajoutant des colonnes personnalisées telles que ceci mais chaque colonne est positionnée à l'extrême droite de la table, où j'appelle addColumns. P > Y a-t-il un moyen de forcer la position? p> merci p> p>
4 Réponses :
Si vous avez déjà examiné le _pareColumns code>
Méthode que vous 'Re outrepasser, vous verrez que cela appelle SortColumnsbyorder code>
. Donc, si vous ajoutez une colonne après ce point (peut-être avec un événement), vous devez faire quelque chose comme:
C'est une pointe très digne. Merci beaucoup!
Vous pouvez probablement utiliser la fonction addColumnAfter code>.
Faites attention, l'ordre d'appeler ceci avant que le parent puisse être important, voir la réponse de Praful Rajput
Si vous appelez $this->addColumnAfter('barcode', array(
'header' => Mage::helper('sales')->__('Barcode'),
'align' => 'left',
'index' => 'barcode',
'width' => '200px',
),'real_order_id');
parent::_prepareColumns();
Cette réponse n'entraînera que les nouvelles colonnes ajoutées aux tout premiers ou trois dernières positions de la liste.
Comme les autres réponses ont souligné, vous pouvez utiliser le Cependant quoi (la plupart des) les autres réponses omettent de mentionner est que Le Cela signifie que votre classe dérivée devra faire la même chose afin de -sort les colonnes basées sur votre nouvelle commande. Par exemple: p> mage_adminhtml_block_widget_grid :: addColumnAprès code> méthode pour accomplir cela.
MAGE_ADMINHTML_BLOCK_WIDGET_GRID :: SORTECOLUMUMORDER CODE> Pour que les colonnes soient réorganisées forts>. p>
mage_adminhtml_block_widget_grid :: SortColumnsbyorder code> appelé exclusivement par le
mage_adminhtml_block_widget_grid :: _ PrePecolumns code> comme suit: p>