How to show zend framework data grid data sorted by "date" as default? When i get on the page, i wish to see data grid sorted by time as default, without getting params in URL like .../order/created_DESC/
$testimonials = new Application_Model_DbTable_Testimonials();
$source = new Bvb_Grid_Source_Zend_Table($testimonials);
Thanks.
I solved this by passing to datagrid $select instead of $object
$testimonials = new Application_Model_DbTable_Testimonials();
$source = new Bvb_Grid_Source_Zend_Table($testimonials);
is now
$testimonials = new Application_Model_DbTable_Testimonials();
$testimonials->setSortOrder('created');
$source = new Bvb_Grid_Source_Zend_Select($testimonials->getTestimonials());
It's hard to see what your class is doing since you didn't posted that one.
But when it's usess the fetchAll
() function you can do two things:
Option 1
When there is an fetchAll()-call in the Grid class you can make this one:
$testimonialsTable->fetchAll(null, 'date'));
Option 2
You can re-write the fetchAll
-Method in the Application_Model_DbTable_Testimonials
class, when you make
public function fetchRow($where = null, $order = null, $offset = null)
{
if ($order===null) : $order='date'; endif;
return parent::fetchAll(where, $order, $offset)
}
Please notice in the last example fetchess always will be default sorted by the date-field.