development:odoo_dev_intro

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
development:odoo_dev_intro [2022/07/12 09:51] – [Créer un modèle] azizdevelopment:odoo_dev_intro [2022/11/13 15:18] (current) aziz
Line 144: Line 144:
 Reste à répondre à la question : où doit-on créer ces fichiers ? Reste à répondre à la question : où doit-on créer ces fichiers ?
  
-Dans le dossier ''extra-addons''. Dans la suite de commande suivantes nous allons :+Dans le dossier ''extra-addons'' 
 + 
 +Dans la suite de commandes suivante nous allons :
  
   * créer un dossier ''monmodule'' dans le dossier ''extra-addons''   * créer un dossier ''monmodule'' dans le dossier ''extra-addons''
Line 166: Line 168:
 $ touch __manifest__.py $ touch __manifest__.py
 $ echo "{'name':'Mon Module',}" | tee __manifest__.py $ echo "{'name':'Mon Module',}" | tee __manifest__.py
 +$ docker-compose down && docker-compose up -d
 </cli> </cli>
  
-En se loggant sur l'application, la page d'accueil par défaut sur laquelle nous atterrissons est la vue consacrées au applications disponibles.+En se loggant sur l'application, la page d'accueil par défaut sur laquelle nous atterrissons est la vue consacrées aux applications disponibles.
  
 Nous pouvons filtrer ((Filtrer signifie taper un mot sur la barre de recherche suivi d'Enter. Nous pouvons filtrer sur le nom mais aussi sur d'autres champs comme la catégorie ou l'état. Ces notions relèvent du fonctionnel de l'application Odoo et sont abordés sur un autre support)) pour n'afficher que les modules qui correspondent au module minimal que nous venons de créer. Nous pouvons filtrer ((Filtrer signifie taper un mot sur la barre de recherche suivi d'Enter. Nous pouvons filtrer sur le nom mais aussi sur d'autres champs comme la catégorie ou l'état. Ces notions relèvent du fonctionnel de l'application Odoo et sont abordés sur un autre support)) pour n'afficher que les modules qui correspondent au module minimal que nous venons de créer.
Line 192: Line 195:
  
 ===== Créer un modèle ===== ===== Créer un modèle =====
-Pour créer notre premier modèle nous devons créer un fichier python que nous allons importer dans le ''%%__init__.py%%''.+Nous créons notre premier modèle dans un nouveau fichier python.
  
 <cli> <cli>
 $ cd ~/service.odoo/extra-addons/monmodule $ cd ~/service.odoo/extra-addons/monmodule
 $ touch models.py $ touch models.py
-$ echo 'from . import models' >> __init__.py 
 $ editor models.py $ editor models.py
 </cli> </cli>
Line 215: Line 217:
 Le nom de la table dans la base de données (model name) est défini par la valeur de l'attribut spécial ''_name''. Le nom de la table dans la base de données (model name) est défini par la valeur de l'attribut spécial ''_name''.
  
 +Pour que le nouveau fichier ''models.py'' soit chargé et évalué par l'interpréteur Python, nous devons le répertorier dans le fichier ''%%__init__.py%%'' du module, comme suit : 
 +  
 <cli> <cli>
 +$ cd ~/service.odoo/extra-addons/monmodule
 +$ echo "from . import models"   | tee -a __init__.py
 $ cat __init__.py $ cat __init__.py
 from . import models from . import models
Line 423: Line 428:
 Sur les deux représentations du modèle ''elo.prof'' nous pouvons voir que les champs ''name'' et ''bio'' ont été correctement ajoutés. Sur les deux représentations du modèle ''elo.prof'' nous pouvons voir que les champs ''name'' et ''bio'' ont été correctement ajoutés.
  
-===== Les règles d'accès ===== +===== Les droits d'accès ===== 
-Les règles d'accès sont le mécanisme utilisé pour définir les autorisations sur les modèles.+Les droits d'accès sont le mécanisme utilisé pour définir les autorisations sur les modèles.
  
-Grâce aux règles d'accès nous pouvons dire si tel groupe d'utilisateurs a le droit de lecture, de modification, de création ou d'effacement sur les enregistrements d'un modèle.+Grâce aux droits d'accès nous pouvons dire si tel groupe d'utilisateurs a le droit de lecture, de modification, de création ou d'effacement sur les enregistrements d'un modèle.
  
 C'est un des nombreux mécanismes utilisables dans Odoo pour gérer les droits d'accès sur les modèles. C'est un des nombreux mécanismes utilisables dans Odoo pour gérer les droits d'accès sur les modèles.
  
-Pour implémenter les règles d'accès nous devons d'abord les déclarer dans le manifeste de notre module.+Pour implémenter les droits d'accès nous devons d'abord les déclarer dans le manifeste de notre module.
  
 Nous allons donc éditer le fichier ''%%__manifest__.py%%'' ainsi : Nous allons donc éditer le fichier ''%%__manifest__.py%%'' ainsi :
Line 443: Line 448:
 </code> </code>
  
-Nous avons ajouté au manifest une nouvelle clé ''data'' dont la valeur est une list dont chaque élément est le nom d'un fichier qui est supposé contenir de la data.+Nous avons ajouté au manifest une nouvelle clé ''data'' dont la valeur est une liste dont chaque élément est le nom d'un fichier qui est supposé contenir de la data.
  
 Le nom de ce fichier correspond à un des modèles préchargés dans Odoo et dont Odoo se sert pour son fonctionnement interne. Le nom de ce fichier correspond à un des modèles préchargés dans Odoo et dont Odoo se sert pour son fonctionnement interne.
  
-Le modèle ''ir.model.access'' est le modèle qu'utilise Odoo pour conserver les autorisations d'accès sur les autres modèles.+Le modèle ''ir.model.access'' est le modèle qu'utilise Odoo pour conserver les droits d'accès sur les autres modèles.
  
 Nous allons donc créer le ''ir.model.access.csv'' Nous allons donc créer le ''ir.model.access.csv''
  • development/odoo_dev_intro.1657615900.txt.gz
  • Last modified: 2022/07/12 09:51
  • by aziz