CakePHP Paginator: ordinamento in base a un campo Translated

ATTENZIONE! Il post ha più di 2 anni e le informazioni contenute potrebbero essere obsolete (ad esempio a causa di un aggiornamento di versione rispetto agli elementi descritti o links modificati da siti esterni).

Nel caso in cui si utilizzi il Paginator Helpere si vogliano ordinare i risultati in base ad un campo tradotto con Tranlsate Behavior

var $actsAs = array(
    'Translate'=> array(
        'name'
    )
);

si deve utilizzare all'interno delle view la funzione sort in questo modo

echo $paginator->sort('name','I18n__name.content');

e aggiungere nell'AppModel la seguente funzione (testato in CakePHP 1.3):

function hasField($fieldName) {
    if (parent::hasField($fieldName))
        return true;
    else
        switch ($fieldName) {
            case "content":
                return true;
            default:
                return false;
        }
    return false;
}

Condividi questo post


Commenti