Projet

Général

Profil

Development #49405

backoffice, rendu des pages en une passe

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

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
12 décembre 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Pour le moment le rendu des pages qui utilisent un gabarit passent par {% extends "wcs/backoffice/base.html" %} , le tout génère une chaine de caractères ("body"), et ensuite il y a deuxième rendu, cette fois de wcs/backoffice.html, qui fait

{% block main-content %}
{{ body|safe }}
{% endblock %}

Voir dans quelle mesure tout ça pourrait se faire en une passe, avec directement un {% extends "wcs/backoffice.html" %} , ce qui peut avoir un petit bénéfice perfs mais surtout ça permettrait de définir la barre latérale dans le gabarit, plutôt qu'avoir à la mettre indépendamment dans get_response().filter['sidebar'].


Fichiers

Révisions associées

Révision f33c3ecb (diff)
Ajouté par Frédéric Péters il y a environ 3 ans

backoffice: add possibility to render templates in a single pass (#49405)

Historique

#1

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

#2

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

j'ai l'impression qu'on perd le contexte en mode django_native (lorsqu'on passe un contexte)

#3

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

            if isinstance(body, template.QommonTemplateResponse):
                body.add_media()
                if body.is_django_native:
                    self.template_names = body.templates[0]
                    context.update(body.context)  # <-
                else:
                    body = template.render(body.templates, body.context)
                    self.template_names = None
                get_publisher().session_manager.finish_successful_request()
            self.quixote_response = get_request().response
            context.update(template.get_decorate_vars(body, get_response(), generate_breadcrumb=True))

?
#4

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

Oui, pour valider ça j'ai passé le rendu de la barre latérale dans le gabarit.

#5

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

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

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

  • Statut changé de Solution validée à Résolu (à déployer)
commit f33c3ecbcef5310e547df51931c29e8c95b34deb
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Sat Dec 12 19:58:46 2020 +0100

    backoffice: add possibility to render templates in a single pass (#49405)
#7

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

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

Formats disponibles : Atom PDF