Projet

Général

Profil

Development #46862

fiches : empêcher de vider le gabarit de résumé si des vues "source de donnée" existent

Ajouté par Thomas Noël il y a plus de 3 ans. Mis à jour il y a plus de 3 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
22 septembre 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Parce que ça rend l'affaire incohérente.


Fichiers


Demandes liées

Bloqué par w.c.s. - Development #44155: exposer les vues personnalisées globales des fiches en source de donnéesFermé17 juin 2020

Actions

Révisions associées

Révision 8b4f0fbb (diff)
Ajouté par Lauréline Guérin il y a plus de 3 ans

cards: empty digest template when datasource custom views (#46862)

Historique

#1

Mis à jour par Lauréline Guérin il y a plus de 3 ans

  • Assigné à mis à Lauréline Guérin
#2

Mis à jour par Lauréline Guérin il y a plus de 3 ans

  • Bloqué par Development #44155: exposer les vues personnalisées globales des fiches en source de données ajouté
#3

Mis à jour par Lauréline Guérin il y a plus de 3 ans

  • Assigné à Lauréline Guérin supprimé
#4

Mis à jour par Lauréline Guérin il y a plus de 3 ans

  • Assigné à mis à Lauréline Guérin
#5

Mis à jour par Lauréline Guérin il y a plus de 3 ans

#6

Mis à jour par Thomas Noël il y a plus de 3 ans

En réflechissant un peu plus, les carddef sont par défaut disponibles en source de données (même quand y'a pas de vue personnalisée). Il faudrait interdire aussi un gabarit vide si la carddef est déjà utilisée comme source dans un formdef/carddef, un peu à la manière du self.datasource_ui.is_used dans wcs/admin/data_sources.py (l'analogie étant que "vider" le gabarit de résumé revient à supprimer la source de données)

Bon, sans doute faut-il commencer par un ticket qui liste les utilisations d'un carddef et de ses vues "source de données". Gérer les foreign key, quoi.

#7

Mis à jour par Frédéric Péters il y a plus de 3 ans

(...) liste les utilisations d'un carddef et de ses vues "source de données".

En fait il y a désormais ça vu qu'on liste les endroits où les fiches sont utilisées dans les champs (cf usage_in_formdefs), il s'agirait donc de ce patch mais y changer la condition,

-        clauses = [Equal('formdef_type', 'carddef'), Equal('visibility', 'datasource')]
-        custom_views = get_publisher().custom_view_class.count(clauses)
-        if custom_views:
+        if self.usage_in_formdefs():

De manière un peu plus développée usage_in_formdefs pourrait avoir une variante sans tri, avec itérateur, pour pouvoir faire un if any(...):.

#8

Mis à jour par Lauréline Guérin il y a plus de 3 ans

Et puis c'était un peu n'importe quoi mes clauses: je récupérais toutes les custom views datasource, au lieu de juste celles concernant la carddef concernée :)

#9

Mis à jour par Thomas Noël il y a plus de 3 ans

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

Ça me semble tout bon.

#10

Mis à jour par Lauréline Guérin il y a plus de 3 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 8b4f0fbbdc0cc96ea5d77aadd92cc7e8be87a869
Author: Lauréline Guérin <zebuline@entrouvert.com>
Date:   Tue Oct 20 16:57:37 2020 +0200

    cards: empty digest template when datasource custom views (#46862)
#11

Mis à jour par Frédéric Péters il y a plus de 3 ans

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

Formats disponibles : Atom PDF