Мы используем Magento CE 1.9.1.
Кажется, я не могу найти ответ на этот вопрос.
Я добавил столбец для модуля admin grid. Я хочу ограничить длину строки, когда данные заполняют ячейку.
Есть ли опция для $this->addColumn
которая позволяет это? Единственное, что я нашел, это string_limit
, но это не сработало.
редактировать
Вот что я вижу.
Я хочу ограничить видимые символы в этом поле, чтобы я не отображал всю строку.
Код, который генерирует этот столбец в protected function _prepareColumns()
:
$this->addColumn('testimonial', array(
'header' => Mage::helper('testimonial')->__('Testimonial'),
'align' => 'left',
'index' => 'testimonial',
));
Единственное предложение, которое я нашел для достижения того, что я хочу, это добавить 'string_limit' => '{some number}'
в addColumn
параметров addColumn
. Не работает.
Вы должны переопределить файл в локальной папке или просто скопировать приложение \code\core\Mage\Adminhtml\Block\Testimonial\Grid.php в приложение \code\local\Mage\Adminhtml\Block\Testimonial\Grid.php
$this->addColumn('name', array(
'header' => Mage::helper('testimonial')->__('Testimonial'),
'index' => 'testimonial'
));
замените его на
$this->addColumn('namewithprifx', array(
'header' => Mage::helper('testimonial')->__('Testimonial'),
'index' => 'testimonial',
'type' => 'text',
'width' => '250px',
'sortable' =>false,
'filter' => false,
'renderer' => 'NameSpace_Customergrid_Block_Adminhtml_Renderer_Namewithprifx',
));
Создать файл в NameSpace\Customergrid\Block\Adminhtml\Renderer\Namewithprifx.php
<?php
class NameSpace_Customergrid_Block_Adminhtml_Renderer_Namewithprifx extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
{
public function render(Varien_Object $row)
{
//$getData = $row->getData();
$str=$row->getData('prefix'). " ". $row->getData('testimonial');
return $str; //you can use substr or any php function here
}
}
очистить кеш и попробовать