Question

J'ai quelques fichiers et les informations à leur sujet se trouvent dans une base de données SQL.Pour un groupe de fichiers donné, ils partageront tous un gallery_id (text) commun et un upload_time (datetime) différent.J'essaie d'obtenir une liste de fichiers partageant tous un identifiant de galerie commun, puis de les trier par upload_time, mais cela ne fonctionne pas.Voici la syntaxe que j'ai utilisée :

    >>> foo = Storedfile.query.filter_by(
        gallery_id ='kgLivY').all().order_by(Storedfile.upload_time)
        Traceback (most recent call last):
          File "<stdin>", line 1, in <module>
        AttributeError: 'list' object has no attribute 'order_by'

Qu'est-ce que je fais de mal ici ?

Était-ce utile?

La solution

Vous devez faire le .all() dernier.

foo = Storedfile.query.filter_by(
    gallery_id='kgLivY').order_by(
        Storedfile.upload_time
    ).all()

all() renvoie un python standard list qui n'a alors pas l'attribut/méthode order_by.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top