goa/doc/devmanual_fr/chap_fondements_erudi.txt
changeset 0 b97547f5f1fa
equal deleted inserted replaced
-1:000000000000 0:b97547f5f1fa
       
     1 Fondements CubicWeb
       
     2 ================
       
     3 
       
     4 Concepts et vocabulaire
       
     5 -----------------------
       
     6 
       
     7 *schéma*
       
     8   le schéma définit le modèle de données d'une application sous forme d'entités
       
     9   et de relations, grâce au package `yams`_. C'est l'élément central d'une
       
    10   application. Il est initialement défini sur le système de fichiers et est
       
    11   stocké dans la base de données lors de la création d'une instance. CubicWeb 
       
    12   fournit un certain nombres de types d'entités inclus systématiquement 
       
    13   car nécessaire au noyau CubicWeb et une librairie de composants devant être
       
    14   inclus explicitement le cas échéant.
       
    15 
       
    16 *source*
       
    17   une source de données est un conteneur de données quelquonque (SGBD, annuaire
       
    18   LDAP...) intégré par l'entrepôt CubicWeb. Un entrepôt possède au moins une source
       
    19   dite "system" contenant le schéma de l'application, l'index plein-texte et
       
    20   d'autres informations vitales au système.
       
    21 
       
    22 *composant*
       
    23   un composant est un modèle regroupant un ou plusieurs types de données et/ou
       
    24   des vues afin de fournir une fonctionalité précise, ou une application CubicWeb
       
    25   complète utilisant éventuellement d'autres composants. Les différents
       
    26   composants disponibles sur une machine sont installés dans
       
    27   `/usr/share/cubicweb/templates`
       
    28 
       
    29 *result set*
       
    30   objet encaspulant les résultats d'une requête RQL et des informations sur
       
    31   cette requête.
       
    32 
       
    33 .. _`Python Remote Object`: http://pyro.sourceforge.net/
       
    34 .. _`yams`: http://www.logilab.org/project/name/yams/
       
    35 
       
    36 
       
    37 Structure générale d'une application LAX
       
    38 ----------------------------------------
       
    39 
       
    40 Un composant complexe est structuré selon le modèle suivant :
       
    41 
       
    42 ::
       
    43     
       
    44   .
       
    45   |-- app.yaml
       
    46   |-- custom.py
       
    47   |-- data
       
    48   |-- cubicweb/
       
    49   |-- i18n/
       
    50   |-- logilab/
       
    51   |-- main.py
       
    52   |-- mx/
       
    53   |-- rql/
       
    54   |-- schema.py
       
    55   |-- simplejson/
       
    56   |-- tools/
       
    57   |   |-- generate_schema_img.py
       
    58   |   `-- i18ncompile.py
       
    59   |-- views.py
       
    60   |-- yams/
       
    61   `-- yapps/
       
    62         
       
    63 
       
    64 où :
       
    65 
       
    66 * ``schema.py`` contient la définition du schéma
       
    67 * ``views.py`` contient les définitions des vues
       
    68 * ``i18n`` contient les catalogues de messages pour les langues supportées (coté
       
    69   serveur et interface web) 
       
    70 * ``data`` contient des fichiers de données arbitraires servis statiquement
       
    71   (images, css, fichiers javascripts)... (coté interface web uniquement)