Filtre en grille avec le moteur de rendu personnalisé
J'ai un problème avec le filtre de mon module dans l'admin de la grille.
Mon problème est le suivant:
Filtre pour les colonnes personnalisées convertisseur ne fonctionne pas.
public function _prepareColumns()
{
$this->addColumn('entity_id', array(
'header' => 'ID',
'index' => 'entity_id',
'width' => '30px'
));
$this->addColumn('author', array(
'header' => 'Author',
'index' => 'author',
'renderer' => 'Test_Block_Adminhtml_Vj_Renderer_Author'
));
rendu est
class Test_Block_Adminhtml_Vj_Renderer_Author extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
{
public function render(Varien_Object $row)
{
$value = $row->getData($this->getColumn()->getIndex());
$autor = Mage::getModel('test/test')->load($value);
return ($author->getName() . ' ' . $author->getSurname());
}
}
Auteur dans la grille est affichée amende pour l'exemple "George Bush", mais si j'essaie d'écrire à filtre (par exemple "Bu") filtre de retour à zéro de la ligne. :-/
Une idée?
Thx.
Vous devez vous connecter pour publier un commentaire.
Cet article peut aider... http://www.atwix.com/magento/grid-filter-for-columns/
Sur votre addColumn() appel pour le champ personnalisé, ajoutez quelque chose comme...
'filter_condition_callback' => array($this, '_myCustomFilter'),
Puis ajouter la méthode filter (modification de l' "où()" en tant que de besoin)...