Je voudrais filtrer mon modèle sur la base de la longueur du texte. Quelque chose comme
MyModel.objects.filter(len(text) > 10)
où text est un champ Char ou Text dans le modèle MyModel
Je voudrais filtrer mon modèle sur la base de la longueur du texte. Quelque chose comme
MyModel.objects.filter(len(text) > 10)
où text est un champ Char ou Text dans le modèle MyModel
Ce serait bien mieux y plus rapide si vous ajoutez juste une colonne qui pré-calcule (mémorise) la longueur du texte.
par exemple
class MyModel(models.Model):
text = models.TextField()
text_len = models.PositiveIntegerField()
def save(self, *args, **kwargs):
self.text_len = len(self.text)
return super(MyModel, self).save(*args, **kwargs)
MyModel.objects.filter(text_len__gt = 10) # Here text_len is pre-calculated by us on `save`
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.