Я использовал http://stereointeractive.com/blog/2011/01/08/symfony-1-4-admin-generator-sort-on-custom-column/
, чтобы сделать это для Symfony 1.4 с Propel и столбцом I18N (в моем случае это называется «имя»).
В вашем генераторе.yml add:
В ваших actions.class.php:
protected function isValidSortColumn($column)
{
return parent::isValidSortColumn($column) || $column == 'name';
}
и:
protected function addSortCriteria($criteria)
{
if (array(null, null) == ($sort = $this->getSort()))
{
return;
}
if($sort[0]!="name") {
$column = MyPeer::translateFieldName($sort[0], BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_COLNAME);
} else {
$column = MyI18nPeer::NAME;
}
if ('asc' == $sort[1])
{
$criteria->addAscendingOrderByColumn($column);
}
else
{
$criteria->addDescendingOrderByColumn($column);
}
}