Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Nachdem nun actions, menus, views und models bekannt soll dieses Wissen nun in die Praxis umgesetzt werden.


Scaffolding

Scaffolding, übersetzt "Gerüst", erzeugt ein Grundgerüst für ein Modul. Es werden alle notwendigen Dateien und Verzeichnisse erzeugt.


Der angegebene Ort nimmt immer das aktuelle Verzeichnis als Ausgangspunkt, es sei denn man gibt einen absoluten Pfad an. Dieser beginnt mit einem Slash(/).

Codeblock
languagebash
themeMidnight
$ odoo-bin scaffold  Modulname Ort/an/dem/es/gespeichert/werden/soll


So sieht das Ganze in der Konsole aus.

Image Added

Aufbau eines Moduls


Grundsätzlich gilt, dass alle .py Dateien in der __init__.py ihres Verzeichnisses registriert werden müssen. Hat das Modul Unterverzeichnisse, wie etwa model, die .py Datein enthalten so muss auch dort eine __init__.py vorhanden sein. Diese müssen dann auch im Oberverzeichnis des Moduls registriert werden.

Zur Veranschaulichung werden hier models, views und reports importiert.

Codeblock
languagepy
themeMidnight
import models
import views
import reports


Die  __manifest__.py ist eine der wichtigsten Dateien eines jeden Moduls. Hier wird der Name und eine kurze Beschreibung dessen was es machen soll. Wichtiger jedoch sind die Abhängigkeiten, ob es installiert werden darf oder nicht und die views. Alle xml Dateien, ob views oder reports, müssen hier eingetragen sein. 

Codeblock
languagepy
themeMidnight
{
    'name': "Ein Modul",
    'version': '1.0',
    'depends': ['base'],
    'author': "Name des Autors",
    'category': 'Kategorie',
    'description': """
    Beschreibung
    """,
    # data files always loaded at installation
    'data': [
        'view.xml',
    ],
    # data files containing optionally loaded demonstration data
    'demo': [
        'demo_data.xml',
    ],
}

Unter data werden die angesprochenen views eingetragen und unter depends die Abhängigkeiten.



Info

Rechtliche Hinweise / Impressum