---
url: "https://vueda.dev/v3/reference/api/py/vueda.info.serializers/UnnameableOrderingTermError.md"
title: "UnnameableOrderingTermError"
---

# UnnameableOrderingTermError

## Overview

An ordering term ``model_ordering`` can't report under a single field name.

Every name in ``model_ordering`` is a name a client sends back in ``?o=``, so a term has to
reference exactly one field to be reported. An expression built on no column (``Now()``,
``Random()``) has no name to report, and one built on several (``Concat("first_name",
"last_name")``) has no single name that stands for the sort it performs — listing both would say
the rows arrive sorted by the first and then the second, which is not what such an expression
does.

A path that contains ``.`` or ``,`` has no name to send back either. A key transform on a
``JSONField`` can name any key, such as ``specs__v1.2``, but the dotted ``?o=`` name ``specs.v1.2``
reads back as ``specs__v1__2``, a different path. See ``vueda.core.paths.has_public_ordering_name``.

Raised by ``ModelInfoSerializer.get_ordering_data`` and handled where ordering metadata is
assembled, alongside the paths that resolve to no field at all.

## Source

`server/vueda/info/serializers.py:72`
