Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como crio uma tabela temporária para classificar a mesma coluna por dois critérios usando o ORM do Django?


Acredito que as associações à esquerda podem ajudar nessa situação. Seu objetivo é ordenar as cidades pelo último ponto PM.

Assumindo a chave primária da sua city table é city_id e uma tabela separada chamada city_pm detém os pontos PM, e que você tem dois modelos City e City_Pm...

Na sua opinião:
cities = City.objects.all()

Em seus modelos:
class City(models.Model):
    # fields ...

    def get_latest_pm(self):
        try:
            return City_Pm.objects.filter(city_id=self.pk).order_by("-date")[:1].get()
        except:
            return None

No seu modelo:
{% for city in cities %}
    {{ city.get_latest_pm }}
{% endfor %}