Ok dans ce cas tu veux effectivement faire des jointures.

https://github.com/Natim/django-exact__in

Le 10/12/2012 18:42, Nicolas Steinmetz a écrit :

Le 10 décembre 2012 17:23, Florian Strzelecki <[email protected] <mailto:[email protected]>> a écrit :

    En fait, ton problème est beaucoup plus complexe qu'il n'en a l'air.

    En gros, ce que tu veux faire, c'est ça :

    "Récupérer tous les objets Mark qui sont liés à tous ces N tags."

    En SQL, cela donnerait des choses relativement complexe, à base de
    EXISTS et autres petites choses.
    Donc, déjà, je t'invite à le faire en SQL, et à voir ce que tu
    peux faire avec Django autour de ça... ça devrait déjà aider un peu.


En MongoDB, tu peux le faire avec l'opérateur "all" [1] ; ce qui me donnait précédemment le code suivant :

bookmarks.query.filter({'tag':{'$all': tag_list}}).descending('created_at')

C'est peut être du coup le coté "relationnel" qui flanche dans le cas de ma migration à postgres.

[1] http://docs.mongodb.org/manual/reference/operators/#_S_all

Dans postgres, cela semble possible de le faire avec les arrays : http://www.craigkerstiens.com/2012/08/20/arrays-in-postgres/

Vais peut être partir sur ce principe là sauf que l'extension django pour supporter les arrays postgresql ne s'affiche pas dans l'admin :
http://www.craigkerstiens.com/2012/11/06/django-and-arrays/
https://github.com/niwibe/djorm-ext-pgarray

Il semblerait qu'un fork commence à gérer ça (intégration dans l'admin)

:)
---
Nicolas Steinmetz
http://www.steinmetz.fr - http://nicolas.steinmetz.fr/


_______________________________________________
django mailing list
[email protected]
http://lists.afpy.org/mailman/listinfo/django

_______________________________________________
django mailing list
[email protected]
http://lists.afpy.org/mailman/listinfo/django

Répondre à