Journal Utiliser Tryton dans son application Flask

Posté par (page perso) . Licence CC by-sa
7
18
jan.
2014

La version 0.1 de la librairie flask_tryton vient d'être publiée. Elle permet d'utiliser Tryton depuis une application Flask pour par exemple exposer certaines données comme les projets ou bien les factures des clients via un site web.
Évidement, il manque encore certain Modèle dans Tryton pour une gestion complète d'un site web comme les utilisateurs (qui devrait être différents des utilisateurs de Tryton) ou bien la gestion d'un panier pour l'e-commerce. Une proposition dans ce sens a été soumise sur la mailing-list développeur.
Cet outil vient en complément ou alternative à la solution monolithique déjà existante Nereid

  • # Nereid a quand même l'air plus complet

    Posté par (page perso) . Évalué à 3.

    Je vois bien que la version 0.1 veut dire que c'est pas encore mature ni prêt, et plus un truc pour expérimenter, mais la, y a un module avec une classe de 5 méthodes, alors que Nereid a l'air d'être bien plus avancé ( genre déjà, un site web, des tests ) de l'extérieur..

    Donc je ne vois pas en quoi c'est une alternative dans l'état des choses, vu qu'il manque des tonnes de trucs. Et bon, le complément qui fait beaucoup moins que l'outil qu'il vise à remplacer, pareil, je pense que c'est s'avancer un peu vite vis à vis du projet.

    • [^] # Re: Nereid a quand même l'air plus complet

      Posté par (page perso) . Évalué à 1.

      En fait, c'est déjà utilisable. On l'utilise sur notre site web.
      Par rapport à Nereid, on profite de tout l'éco-système de Flask qui est bien assez riche. Alors oui, ça reste une boîte à outils et pas un logiciel clés en main mais personnellement ça répond bien mieux à mes besoins.

    • [^] # Nereid est plus complet

      Posté par . Évalué à 1.

      L'auteur du journal et le principal développeur du framework Tryton a indiqué sur la mailing liste tryton-dev que le framework Web Nereid, qui utilise également flask, ne correspondait pas à ses exigences (ces exigences ne sont pas précisées).

      Le message indique également qu'au cours du développement du projet flask-tryton, deux modules Tryton génériques et nécessaires aux frameworks web basés sur Tryton ont été identifiés: web-user et web-shop-cart.

      L'objectif du projet flask-tryton semble être le développement:

      • de modules Tryton standards (c'est à dire hébergés sur http://hg.tryton.org) pouvant être utilisés par n'importe quel framework web (Flask, Pyramid, Django)
      • de flask-tryton, une seconde solution de framework web basée sur Flask et utilisant Tryton comme backend

      web-user est inclus de base dans nereid et Cédric a identifié plusieurs problèmes (many extra features that are not always needed and also some limitation). Concernant le second module (generic simple webshop cart implementation), il semble correspondre au module nereid-cart-b2c (Shopping Cart Module for Tryton Nereid eCommerce Platform).

      Nereid est développé par la société OpenLabs qui a listé les problématiques liées à l'utilisation de Tryton comme backend d'une application Web aux rencontres Tryton en 2011 et qui a présenté Nereid aux rencontres Tryton 2012. Au cours des secondes rencontres Tryton, l'inclusion de Nereid dans Tryton a été proposée/décidée.

      Par ailleurs Nereid est hébergé sur Github mais Cédric n'apprécie ni les pull requests, ni les applications avec trop de code.

      • [^] # Re: Nereid est plus complet

        Posté par (page perso) . Évalué à 1.

        Correction:
        * Je n'ai pas dit "ne correspondait pas à ses exigences" mais "ne correspondait pas à mes besoins".
        * L'objectif du projet flask-tryton est juste de permettre l'utilisation de Tryton dans une application Flask.

  • # Tryton

    Posté par (page perso) . Évalué à 8.

    Tryton est une plate-forme applicative de haut-niveau, d'architecture trois tiers, sous licence GPL-3, écrite en Python et utilisant PostgreSQL comme moteur de base de données. C'est le cœur d'une solution complète pour entreprise qui fournit modularité, évolutivité et sécurité.

    Pour essayer de comprendre de quoi il s'agit, j'enlève la description technique du fonctionnement interne du projet:

    Tryton est une plate-forme applicative. C'est le cœur d'une solution complète pour entreprise qui fournit modularité, évolutivité et sécurité.

    Pas bien avancé, j'enlève la novlangue commerciale:

    Tryton est une plate-forme applicative pour entreprise.

    Supair. Il faut lire la description des modules pour y voir un peu plus clair:

    Actuellement, les principaux modules disponibles de Tryton couvrent les champs d'activités suivants: Comptabilité, Facturier, Gestion des ventes, Gestion des achats, Comptabilité analytique, Gestion de stock. Ils établissent une base saine et une abstraction simple et puissante des concepts clés pour toute adaptation métier.

    Dois-je comprendre que c'est une sorte d'ORM dédié à la gestion ?

    • [^] # Re: Tryton

      Posté par (page perso) . Évalué à 5.

      C'est un outil qui permet de modéliser l'activité de ton entreprise, la partie "métier".

      prenons l'exemple d'une boulangerie, il faut gerer les stocks de croissant, les fournisseurs, les factures, etc. Tout ça, tu le rentres dans ton outil, et il te donnes les rapports que tu veux. Par exemple, il sort les papiers pour la compta, il te sort les factures, et la, tu peux avoir une vue de ton activité commerciale.

      Essaye de t'imaginer commercant, pour un gros ou un petit truc, et de ce que tu dois faire, et de te dire "il faut que je formalise ça et que j'informatise tout". Et la, tryton te permet de le faire, non pas directement, mais via une boite à outil ( et par exemple, nereid te permet de faire une interface web qui va avec tryton pour avoir ensuite un package complet, et tryton-flask te permet de faire des trucs simples et rapides, ou de tout refaire le reste en flask et en python, si tu te sens l’âme d'un dev.

    • [^] # exemple d'utilisation

      Posté par . Évalué à 2.

      Dois-je comprendre que c'est une sorte d'ORM dédié à la gestion ?

      Le framework Tryton fait office d'ORM et de moteur de workflow. Il permet de gérer tout type de workflow à partir de modèles les décrivant. Le projet inclus également des modules standards qui implémentent des workflows couramment rencontrés.

      Flask-tryton et Nereid sont des frameworks Web qui utilisent Tryton et flask. Ce site de vente en ligne est un exemple d'application Web réalisée à l'aide de Nereid.

  • # Nereid est-elle vraiment une solution monolithique ?

    Posté par . Évalué à 1.

    Nereid-webshop (démo) repose sur le système de modules Tryton.

    OpenLabs a publié d'autres applications Web utilisant Tryton comme backend, par exemple:

    Quelles sont les caractéristiques qui permettent de qualifier Nereid de monolithique ?

    • [^] # Re: Nereid est-elle vraiment une solution monolithique ?

      Posté par (page perso) . Évalué à 1.

      Nereid est monolithique dans le sens où son usage n'est possible que pour les cas d'utilisations restreints déjà prévues par l'auteur (gestion des utilisateurs, de la langue, du multi-société, composition des pages/URLs, etc.).
      Pour les modules, en effet il se base sur le mécanisme de Tryton mais je pense personnellement qu'il ne convient pas pour répondre aux demandes variées de création de site web car la modularité ne permet pas de modifier l'architecture.
      À propose des modules, le webshop d'après mon analyse est trop simple pour gérer la diversité des cas. Le module de projet est basé sur une simplification de celui de Tryton.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.