Est-il possible de filtrer par propriété?
J'ai une méthode dans mon modèle:
@property
def myproperty(self):
[..]
et maintenant je veux filtrer par cette propriété comme:
MyModel.objects.filter(myproperty=[..])
est-ce possible?
Est-il possible de filtrer par propriété?
J'ai une méthode dans mon modèle:
@property
def myproperty(self):
[..]
et maintenant je veux filtrer par cette propriété comme:
MyModel.objects.filter(myproperty=[..])
est-ce possible?
Je suis peut-être un malentendu votre question de départ, mais il y a un filtre intégré en python.
filtered = filter(myproperty, MyModel.objects)
Mais il est préférable d'utiliser une compréhension de liste:
filtered = [x for x in MyModel.objects if x.myproperty()]
ou encore mieux, un générateur d'expression:
filtered = (x for x in MyModel.objects if x.myproperty())
Je sais que c’est une vieille question, mais pour ceux qui sautent ici, je pense qu’il est utile de lire la question ci-dessous et la réponse relative:
Comment personnaliser le filtre administrateur dans Django 1.4
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.