Показывать содержимое БД в шаблоне, отсортированное по дате

В настоящее время я показываю содержимое в шаблоне, упорядоченное по порядковому_номеру

#модели:

class FlowPhase(models.Model):
    sequence_number = models.IntegerField(validators=[MinValueValidator(1)])
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

#viewset

# Function to define sort criteria
def take_seq_number(elem):
    return elem['flow_phase']['sequence_number']

def phase_details(request, batch_pk):
    ph_details_url = API_HOST + "/api/phase_details_full/?batch=" + str(batch_pk)
    answer = requests.get(ph_details_url).json()


    ph_details = answer['results']  


    ph_details.sort(key=take_seq_number)  # <------ sorting by sequence number

    rendered_page = render(request, 'batches_phases/consumer/phase_details.html', {'ph_details': ph_details})
    return rendered_page

Итак, я хочу показывать содержимое ph_details в шаблоне упорядоченным по updated_at, а не по sequence_number больше.

Есть предложения, как это сделать в python? В этом случае я полагаю, что изменения будут только в

ph_details.sort(key=take_seq_number)

и

def take_seq_number(elem):
     return elem['flow_phase']['sequence_number']

Моя сложность в том, что поскольку sequence_number - целое число, его легче сортировать. Но как это сделать с датами?

Просто определите новый метод сортировки и передайте его в качестве key параметра функции sort()

что-то вроде:

def sort_phase_updated_at(elem):
    return elem['flow_phase']['updated_at']

ph_details.sort(key=sort_phase_updated_at)
Вернуться на верх