Ao exibir várias linhas de dados, muitas vezes é necessário que os dados sejam ordenados de acordo com algumas colunas especificadas pelos usuários finais. O Yii utiliza um objeto [[yii\data\Sort]] para representar as informações sobre um esquema de ordenação. Em particular,
Um atributo pode ser simples como um [atributo do model](structure-models.md#attributes). Ele também pode ser um composto por uma combinação de múltiplos atributos de model ou colunas do DB. Mais detalhes serão mostrados logo a seguir.
Para usar [[yii\data\Sort]], primeiro declare quais atributos podem ser ordenados. Em seguida, pegue a requisição com as informações de ordenação através de
[[yii\data\Sort::$attributeOrders|attributeOrders]] ou [[yii\data\Sort::$orders|orders]]
O atributo `name` é um atributo *composto* definido por `first_name` e `last_name` de `Article`. Declara-se com a seguinte estrutura de array:
- Os elementos `asc` e `desc` determina a direção da ordenação dos atributos em ascendente ou descendente respectivamente. Seus valores representam as colunas e as direções pelas quais os dados devem ser classificados. Você pode especificar uma ou várias colunas para indicar uma ordenação simples ou composta.
- O elemento `default` especifica a direção pela qual o atributo deve ser ordenado quando requisitado. O padrão é a ordem crescente, ou seja, se a ordenação não for definida previamente e você pedir para ordenar por esse atributo, os dados serão ordenados por esse atributo em ordem crescente.
> Observação: Você pode alimentar diretamente o valor de [[yii\data\Sort::$orders|orders]] para a consulta do banco de dados para implementar a sua cláusula `ORDER BY`. Não utilize [[yii\data\Sort::$attributeOrders|attributeOrders]] porque alguns dos atributos podem ser compostos e não podem ser reconhecidos pela consulta do banco de dados.
Você pode chamar [[yii\data\Sort::link()]] para gerar um hyperlink em que os usuários finais podem clicar para solicitar a ordenação dos dados pelo atributo especificado. Você também pode chamar [[yii\data\Sort::createUrl()]] para criar um URL ordenáveis.