Bug #67856
AttributeError: 'datetime.datetime' object has no attribute 'startswith'
0%
Description
https://sentry.entrouvert.org/entrouvert/publik/issues/62652/
AttributeError: 'datetime.datetime' object has no attribute 'startswith' (40 additional frame(s) were not displayed) ... File "<unknown source>", line 1 {% autoescape off %}{{ cards|objects:"sun_inventaire_attribution"|filter_by:"att_id"|filter_value:form_var_att_id|order_by:form_receipt_datetime|first|get:"form_internal_id" }}{% endautoescape %}
Fichiers
Révisions associées
Historique
Mis à jour par Nicolas Roche il y a plus d'un an
- Projet changé de Suivi des traces à w.c.s.
Dans cette action de modification des fiches,
https://demarches-tao-thononagglo.test.entrouvert.org/backoffice/workflows/49/status/16/items/3/
On avait ce ciblage :
https://demarches-tao-thononagglo.test.entrouvert.org/backoffice/workflows/49/history/compare?version1=5915&version2=5916&mode=inspect
{{ cards|objects:"sun_inventaire_attribution"|filter_by:"att_id"|filter_value:form_var_att_id|order_by:form_receipt_datetime|first|get:"form_internal_id" }}
où le filtre first
sur une date provoque la trace (ex d'inspecteur où le contexte est disponible : https://demarches-tao-thononagglo.test.entrouvert.org/backoffice/data/sun_inventaire_materiel/95/inspect)
(aucune idée de s'il faut sortir sur une trace ou pas ici)
Mis à jour par Thomas Noël il y a plus d'un an
De ma lecture, first ne fait pas d'appel à startswith. Ca doit être autre chose...
Mis à jour par Thomas Noël il y a plus d'un an
C'est le order_by:form_receipt_datetime qui est mal fichu, ça doit être order_by:"form_receipt_datetime"
Autrement dit :
{{ cards|objects:"sun_inventaire_attribution"|filter_by:"att_id"|filter_value:form_var_att_id|order_by:"form_receipt_datetime"|first|get:"form_internal_id" }}
Mis à jour par Frédéric Péters il y a plus d'un an
- Fichier 0001-misc-check-value-passed-to-order_by-is-a-string-6785.patch 0001-misc-check-value-passed-to-order_by-is-a-string-6785.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Thomas Noël il y a plus d'un an
- Statut changé de Solution proposée à Solution validée
Je ne sais pas si on a besoin/envie d'ajouter un unlazy, je dirais que ça me semble inutile, mais au cas où, tu pourras l'ajouter. Je valide ainsi en tout cas.
Mis à jour par Frédéric Péters il y a plus d'un an
- Statut changé de Solution validée à Résolu (à déployer)
Il y a un unlazy au niveau du filtre, ça suffit,
@register.filter def order_by(queryset, attribute): return queryset.order_by(unlazy(attribute))
commit 4ace5a41e33831b7dcccb630679bf5cde398598b Author: Frédéric Péters <fpeters@entrouvert.com> Date: Tue Aug 2 14:05:49 2022 +0200 misc: check value passed to |order_by is a string (#67856)
Mis à jour par Transition automatique il y a plus d'un an
- Statut changé de Résolu (à déployer) à Solution déployée
misc: check value passed to |order_by is a string (#67856)