Projet

Général

Profil

Development #28639

sur un champ carte, disposer de form_var_xxx_lat et form_var_xxx_lon

Ajouté par Thomas Noël il y a 3 mois. Mis à jour il y a 2 mois.

Statut:
Solution déployée
Priorité:
Normal
Assigné à:
Début:
05 déc. 2018
Echéance:
% réalisé:

0%

Patch proposed:
Oui

Description

... qui seraient des string, pour ne pas se compliquer la vie.

0001-draft-28639.patch Voir (2,36 ko) Thomas Noël, 05 déc. 2018 17:01

0001-misc-use-a-dedicated-lazy-object-for-map-variables-2.patch Voir (3,75 ko) Frédéric Péters, 06 déc. 2018 11:29

0001-fields-add-a-structured-form-to-map-fields-28639.patch Voir (2,61 ko) Frédéric Péters, 06 déc. 2018 12:36


Demandes liées

Lié à w.c.s. - Bug #28638: 'LazyFieldVar' object has no attribute 'split' Rejeté 05 déc. 2018

Révisions associées

Révision b70d6d15 (diff)
Ajouté par Frédéric Péters il y a 3 mois

fields: add a structured form to map fields (#28639)

Historique

#1 Mis à jour par Thomas Noël il y a 3 mois

  • Lié à Bug #28638: 'LazyFieldVar' object has no attribute 'split' ajouté

#2 Mis à jour par Frédéric Péters il y a 3 mois

pour ne pas se compliquer la vie.

Si on veut éviter le localize par défaut de django, on peut avoir un autre ticket.

#3 Mis à jour par Thomas Noël il y a 3 mois

Frédéric Péters a écrit :

pour ne pas se compliquer la vie.

Si on veut éviter le localize par défaut de django, on peut avoir un autre ticket.

En fait c'était surtout dans l'idée de ne pas inventer quelque chose ici (on n'utilise pas de "decimal" dans les variables natives), et aussi de renvoyer une chaine vide si la carte n'a pas été cliquée...

#4 Mis à jour par Thomas Noël il y a 3 mois

Bon, marche pas, je dois rater un truc évident, ou alors je suis complètement à côté de la plaque, ou les deux.

    def test_lazy_map_variable(pub, variable_test_data):
        formdef = FormDef.select()[0]
        formdata = formdef.data_class().select()[0]
        pub.substitutions.reset()
        pub.substitutions.feed(formdef)
        pub.substitutions.feed(formdata)
        for mode in (None, 'lazy'):
            assert WorkflowStatusItem.compute('=form_var_map') == '2;4'
            assert WorkflowStatusItem.compute('{{ form_var_map }}') == '2;4'
            assert WorkflowStatusItem.compute('=form_var_map.split(";")[0]') == '2'
>           assert WorkflowStatusItem.compute('=form_var_map_lat') == '2'
E           AssertionError: assert '=form_var_map_lat' == '2'
E             - =form_var_map_lat
E             + 2

#5 Mis à jour par Frédéric Péters il y a 3 mois

  • Assigné à changé de Thomas Noël à Frédéric Péters

#6 Mis à jour par Frédéric Péters il y a 3 mois

Le truc raté c'était le test, qui ne passait pas sur les deux modes (lazy ou pas).

Voilà le test adapté, pour vérifier les nouveaux attributs uniquement en mode lazy.

Question à voir ici, peut-on se permettre d'avancer avec des nouveautés sur lazy uniquement ?

#7 Mis à jour par Frédéric Péters il y a 3 mois

Question à voir ici, peut-on se permettre d'avancer avec des nouveautés sur lazy uniquement ?

Sur l'idée que non, pas encore, j'ai repris l'affaire de manière différente, pour que les champs carte exposent une forme structurée.

#8 Mis à jour par Thomas Noël il y a 3 mois

il manque peut-être un bout du patch, je m'attendais à ce que les tests soient modifiés pour être aussi lancés sur le mode non lazy ...?

#9 Mis à jour par Frédéric Péters il y a 3 mois

Les tests arrivent tous dans l'autre ticket, c'était trop pénible à diviser.

#10 Mis à jour par Thomas Noël il y a 3 mois

  • Statut changé de Solution proposée à Solution validée

ok donc le dernier patch remplace complétement le précédent avec le LazyFieldVarMap.

Au cas où je ne serais pas contre un petit commentaire autour du "def get_structured_value(self, data):" qui expliquerait que le but est d'avoir une représentation de "lat" et "lon" dans form_var_xxx_lat/lon

#11 Mis à jour par Frédéric Péters il y a 3 mois

  • Statut changé de Solution validée à Résolu (à déployer)

Zut poussé en oubliant ton commentaire :/

commit b70d6d150756e65b75a91b234730ff4c52521c72
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Thu Dec 6 12:34:18 2018 +0100

    fields: add a structured form to map fields (#28639)

#12 Mis à jour par Frédéric Péters il y a 2 mois

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF