Bonsoir a tous
Je dois etre fatigue, mais j'avoue ne pas avoir trouve de solution elegante a mon probleme...
J'utilise Elixir, et ai construit mes bases de facon purement declarative (pas de mapper, rien de tout ca).
Disons que j'ai 2 classes. Auteur et Livre, avec une jointure.
Auteur aura donc un attribut "livres".
Mon probleme : j'aimerais par exemple avoir une requete qui me renvoie la liste des auteurs ayant plus de x livres a leur actif.
J'aimerais bien faire quelque chose du style :
my_query = Auteur.query.filter(Auteur.livres.count()>x)
, mais bien sur ca ne marche pas, vu que Auteur.livres n'est pas une requete...
Je sais bien sur le faire en SQL pur, mais je me demandais s'il n'y avait pas une "jolie" facon de faire ca en restant dans la logique objet.
J'ai vu ca et la qu'en modifiant le mapper on pouvait rajouter des attributs a la volee, etc... mais du coup je perds un peu l'esthetique du declaratif (si c'est pour tripoter un mapper, autant me passer d'Elixir du coup).
Partager