Convert ordering from strings to standard items for queryset. :param orderings: What columns/order to order by :param reverse: Whether reverse order :return: standard ordering for QuerySet.
(
self, orderings: tuple[str, ...], reverse=False
)
| 443 | return self._filter_or_exclude(negate=True, *args, **kwargs) |
| 444 | |
| 445 | def _parse_orderings( |
| 446 | self, orderings: tuple[str, ...], reverse=False |
| 447 | ) -> list[tuple[str, Order]]: |
| 448 | """ |
| 449 | Convert ordering from strings to standard items for queryset. |
| 450 | |
| 451 | :param orderings: What columns/order to order by |
| 452 | :param reverse: Whether reverse order |
| 453 | :return: standard ordering for QuerySet. |
| 454 | """ |
| 455 | new_ordering = [] |
| 456 | for ordering in orderings: |
| 457 | field_name, order_type = self._resolve_ordering_string(ordering, reverse=reverse) |
| 458 | |
| 459 | if not ( |
| 460 | field_name.split("__")[0] in self.model._meta.fields |
| 461 | or field_name in self._annotations |
| 462 | ): |
| 463 | raise FieldError(f"Unknown field {field_name} for model {self.model.__name__}") |
| 464 | new_ordering.append((field_name, order_type)) |
| 465 | return new_ordering |
| 466 | |
| 467 | def order_by(self, *orderings: str) -> QuerySet[MODEL]: |
| 468 | """ |
no test coverage detected