doc/book/fr/MERGE_ME-tut-create-gae-app.fr.txt
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Thu, 27 Aug 2009 12:17:18 +0200
branch3.5
changeset 3032 f0ae6a5aba3e
parent 93 9c919a47e140
permissions -rw-r--r--
integrate fix made for shingouz, let's see if it breaks something
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     1
.. -*- coding: utf-8 -*-
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     2
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     3
.. _tutorielGAE:
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     4
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     5
Tutoriel : créer votre première application web pour Google AppEngine
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     6
=====================================================================
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     7
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     8
Ce tutoriel va vous guider pas à pas a construire une apllication web 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
     9
de gestion de Blog afin de vous faire découvrir les fonctionnalités de
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    10
`CubicWeb`.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    11
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    12
Nous supposons que vous avec déjà suivi le guide :ref:`installationGAE`.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    13
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    14
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    15
Créez une nouvelle application
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    16
------------------------------
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    17
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    18
Nous choisissons dans ce tutoriel de développer un blog comme un exemple
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    19
d'application web et nous allons expliciter toutes les étapes nécessaires
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    20
à sa réalisation.  
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    21
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    22
::
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    23
  
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    24
  cubicweb-ctl newgapp blogdemo
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    25
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    26
`newgapp` est la commande permettant de créer une instance `CubicWeb` pour
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    27
le datastore.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    28
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    29
Assurez-vous que votre variable d'environnement ``PYTHONPATH`` est correctement
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    30
initialisée (:ref:`installationGAE`)
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    31
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    32
Définissez un schéma
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    33
--------------------
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    34
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    35
Le modèle de données ou schéma est au coeur d'une application `CubicWeb`.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    36
C'est là où vous allez devoir définir le type de contenu que votre application
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    37
devra gérer.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    38
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    39
Commençons par un schéma simple que nous améliorerons progressivemment.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    40
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    41
Une fois votre instance ``blogdemo`` crée, vous trouverez un fichier ``schema.py``
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    42
contenant la définition des entités suivantes : ``Blog`` and ``BlogEntry``.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    43
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    44
::
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    45
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    46
  class Blog(EntityType):
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    47
      title = String(maxsize=50, required=True)
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    48
      description = String()
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    49
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    50
  class BlogEntry(EntityType):
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    51
      title = String(maxsize=100, required=True)
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    52
      publish_date = Date(default='TODAY')
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    53
      text = String(fulltextindexed=True)
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    54
      category = String(vocabulary=('important','business'))
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    55
      entry_of = SubjectRelation('Blog', cardinality='?*')
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    56
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    57
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    58
Un ``Blog`` a un titre et une description. Le titre est une chaîne 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    59
de caractères requise par la classe parente EntityType and ne doit
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    60
pas excéder 50 caractères. La description est une chaîne de 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    61
caractères sans contraintes.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    62
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    63
Une ``BlogEntry`` a un titre, une date de publication et du texte
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    64
étant son contenu. Le titre est une chaîne de caractères qui ne 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    65
doit pas excéder 100 caractères. La date de publication est de type Date et a
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    66
pour valeur par défaut TODAY, ce qui signifie que lorsqu'une 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    67
``BlogEntry`` sera créée, sa date de publication sera la date
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    68
courante a moins de modifier ce champ. Le texte est une chaîne de
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    69
caractères qui sera indexée en plein texte et sans contraintes.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    70
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    71
Une ``BlogEntry`` a aussi une relation nommée ``entry_of`` qui la
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    72
relie à un ``Blog``. La cardinalité ``?*`` signifie que BlogEntry
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    73
peut faire partie de zero a un Blog (``?`` signifie `zero ou un`) et
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    74
qu'un Blog peut avoir une infinité de BlogEntry (``*`` signifie
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    75
`n'importe quel nombre incluant zero`). 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    76
Par soucis de complétude, nous rappellerons que ``+`` signifie
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    77
`un ou plus`.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    78
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    79
Lancez l'application
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    80
--------------------
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    81
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    82
Définir ce simple schéma est suffisant pour commencer. Assurez-vous 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    83
que vous avez suivi les étapes décrites dans la section installation
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    84
(en particulier visitez http://localhost:8080/_load en tant qu'administrateur
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    85
afin d'initialiser le datastore), puis lancez votre application avec la commande ::
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    86
   
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    87
   python dev_appserver.py BlogDemo
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    88
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    89
puis dirigez vous vers http://localhost:8080/ (ou si c'est plus facile
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    90
vous pouvez utiliser la démo en ligne http://lax.appspot.com/).
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    91
[FIXME] -- changer la demo en ligne en quelque chose qui marche (!)
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    92
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
    93
.. image:: images/lax-book.00-login.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    94
   :alt: login screen
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    95
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    96
Après vous être authentifié, vous arrivez sur la page d'accueil de votre 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    97
application. Cette page liste les types d'entités accessibles dans votre
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    98
application, en l'occurrence : Blog et Articles. Si vous lisez ``blog_plural``
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
    99
et ``blogentry_plural`` cela signifie que l'internationalisation (i18n)
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   100
n'a pas encore fonctionné. Ignorez cela pour le moment.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   101
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
   102
.. image:: images/lax-book.01-start.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   103
   :alt: home page
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   104
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   105
Créez des entités système
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   106
-------------------------
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   107
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   108
Vous ne pourrez créer de nouveaux utilisateurs que dans le cas où vous
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   109
avez choisi de ne pas utiliser l'authentification Google.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   110
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   111
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   112
[WRITE ME : create users manages permissions etc]
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   113
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   114
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   115
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   116
Créez des entités applicatives
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   117
------------------------------
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   118
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   119
Créez un Blog
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   120
~~~~~~~~~~~~~
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   121
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   122
Créons à présent quelques entités. Cliquez sur `[+]` sur la
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   123
droite du lien Blog. Appelez cette nouvelle entité Blog ``Tech-Blog``
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   124
et tapez pour la description ``everything about technology``,
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   125
puis validez le formulaire d'édition en cliquant sur le bouton
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   126
``Validate``.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   127
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   128
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
   129
.. image:: images/lax-book.02-create-blog.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   130
   :alt: from to create blog
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   131
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   132
En cliquant sur le logo situé dans le coin gauche de la fenêtre,
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   133
vous allez être redirigé vers la page d'accueil. Ensuite, si vous allez 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   134
sur le lien Blog, vous devriez voir la liste des entités Blog, en particulier
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   135
celui que vous venez juste de créer ``Tech-Blog``.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   136
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
   137
.. image:: images/lax-book.03-list-one-blog.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   138
   :alt: displaying a list of a single blog
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   139
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   140
Si vous cliquez sur ``Tech-Blog`` vous devriez obtenir une description
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   141
détaillée, ce qui dans notre cas, n'est rien de plus que le titre
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   142
et la phrase ``everything about technology``
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   143
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   144
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
   145
.. image:: images/lax-book.04-detail-one-blog.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   146
   :alt: displaying the detailed view of a blog
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   147
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   148
Maintenant retournons sur la page d'accueil et créons un nouveau
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   149
Blog ``MyLife`` et retournons sur la page d'accueil, puis suivons
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   150
le lien Blog et nous constatons qu'à présent deux blogs sont listés.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   151
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
   152
.. image:: images/lax-book.05-list-two-blog.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   153
   :alt: displaying a list of two blogs
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   154
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   155
Créons un article
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   156
~~~~~~~~~~~~~~~~~
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   157
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   158
Revenons sur la page d'accueil et cliquons sur `[+]` à droite du lien
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   159
`articles`. Appellons cette nouvelle entité ``Hello World`` et introduisons
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   160
un peut de texte avant de ``Valider``. Vous venez d'ajouter un article
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   161
sans avoir précisé à quel Blog il appartenait. Dans la colonne de gauche
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   162
se trouve une boite intitulé ``actions``, cliquez sur le menu ``modifier``.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   163
Vous êtes de retour sur le formulaire d'édition de l'article que vous 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   164
venez de créer, à ceci près que ce formulaire a maintenant une nouvelle
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   165
section intitulée ``ajouter relation``. Choisissez ``entry_of`` dans ce menu,
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   166
cela va faire apparaitre une deuxième menu déroulant dans lequel vous
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   167
allez pouvoir séléctionner le Blog ``MyLife``.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   168
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   169
Vous auriez pu aussi, au moment où vous avez crée votre article, sélectionner
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   170
``appliquer`` au lieu de ``valider`` et le menu ``ajouter relation`` serait apparu.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   171
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
   172
.. image:: images/lax-book.06-add-relation-entryof.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   173
   :alt: editing a blog entry to add a relation to a blog
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   174
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   175
Validez vos modifications en cliquant sur ``Valider``. L'entité article
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   176
qui est listée contient maintenant un lien vers le Blog auquel il 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   177
appartient, ``MyLife``.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   178
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
   179
.. image:: images/lax-book.07-detail-one-blogentry.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   180
   :alt: displaying the detailed view of a blogentry
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   181
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   182
Rappelez-vous que pour le moment, tout a été géré par la plate-forme
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   183
`CubicWeb` et que la seule chose qui a été fournie est le schéma de
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   184
données. D'ailleurs pour obtenir une vue graphique du schéma, exécutez
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   185
la commande ``laxctl genschema blogdemo`` et vous pourrez visualiser
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   186
votre schéma a l'URL suivante : http://localhost:8080/schema
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   187
90
7fd4ffeb082b [doc] images were renamed and table of content changed
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents: 82
diff changeset
   188
.. image:: images/lax-book.08-schema.fr.png
71
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   189
   :alt: graphical view of the schema (aka data-model)
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   190
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   191
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   192
Change view permission
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   193
~~~~~~~~~~~~~~~~~~~~~~
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   194
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   195
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   196
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   197
Conclusion
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   198
----------
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   199
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   200
Exercise
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   201
~~~~~~~~
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   202
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   203
Create new blog entries in ``Tech-blog``.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   204
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   205
What we learned
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   206
~~~~~~~~~~~~~~~
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   207
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   208
Creating a simple schema was enough to set up a new application that
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   209
can store blogs and blog entries. 
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   210
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   211
What is next ?
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   212
~~~~~~~~~~~~~~
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   213
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   214
Although the application is fully functionnal, its look is very
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   215
basic. In the following section we will learn to create views to
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   216
customize how data is displayed.
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   217
69a4bf8f5e49 Moved content from tutoriel to introduction and to wrokflow chapter.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
diff changeset
   218