odoo von A-Z - W)

W)

Webseiten erstellen

Erstellen eines Basismoduls

In Odoo werden Aufgaben durch die Erstellung von Modulen ausgeführt.

Module passen das Verhalten einer Odoo-Installation an, indem sie entweder neue Verhaltensweisen hinzufügen oder bestehende ändern (einschließlich der Verhaltensweisen, die von anderen Modulen hinzugefügt wurden).

Das Gerüst von Odoo kann ein Basismodul einrichten. Für einen schnellen Start genügt ein einfacher Aufruf:

$ ./odoo-bin Gerüst Academy my-modules

Dadurch wird automatisch ein my-modules-Modulverzeichnis mit einem darin enthaltenen Akademie-Modul erstellt. Das Verzeichnis kann ein bestehendes Modulverzeichnis sein, wenn Sie möchten, aber der Modulname muss innerhalb des Verzeichnisses eindeutig sein.

Ein Demonstrationsmodul

Wir haben ein "komplettes" Modul zur Installation bereit.

Obwohl es absolut nichts tut, können wir es installieren:

- den Odoo-Server starten

$ ./odoo-bin --addons-pfad-addons-addons,my-modules

- gehen Sie zu http://localhost:8069

- eine neue Datenbank mit Demonstrationsdaten erstellen

- zu den Einstellungen ‣ Module ‣ Module

- in der rechten oberen Ecke entfernen Sie den installierten Filter und suchen Sie nach academy

- Klicken Sie auf die Schaltfläche Installieren für das Akademie-Modul

Vorlagen

Das Generieren von HTML in Python ist nicht sehr angenehm.

Die übliche Lösung sind Templates, Pseudo-Dokumente mit Platzhaltern und Anzeigelogik. Odoo erlaubt jedes Python-Templating-System, stellt aber ein eigenes QWeb-Templating-System zur Verfügung, das sich mit anderen Funktionen integrieren lässt. Erstellen Sie eine Vorlage und stellen Sie sicher, dass die Vorlagendatei im Manifest __manifest__.py registriert ist, und ändern Sie den Controller so, dass er unsere Vorlage verwendet.

Speichern von Daten in Odoo

Odoo-Modelle werden auf Datenbanktabellen abgebildet.

Im vorigen Abschnitt haben wir gerade eine Liste von Zeichenketten angezeigt, die statisch in den Python-Code eingegeben wurden. Dies erlaubt keine Änderungen oder persistente Speicherung, so dass wir unsere Daten nun in die Datenbank verschieben.

Warnung

der Administrator-Benutzer die Zugriffskontrolle umgeht, hat er Zugriff auf alle Modelle, auch wenn ihm kein Zugriff gewährt wird.

Daten zur Demonstration

Der zweite Schritt besteht darin, dem System einige Demonstrationsdaten hinzuzufügen, damit es leicht getestet werden kann. Dies geschieht durch Hinzufügen einer Demo-Datendatei, die vom Manifest aus verlinkt werden muss:

Datendateien können für Demo- und Nicht-Demodemodaten verwendet werden. Demo-Daten werden nur im "Demonstrationsmodus" geladen und können für Flusstests und Demonstrationen verwendet werden, Nicht-Demo-Daten werden immer geladen und als anfängliche Systemeinrichtung verwendet.

In diesem Fall verwenden wir Demonstrationsdaten, weil ein tatsächlicher Benutzer des Systems seine eigene Lehrerliste eingeben oder importieren möchte; diese Liste ist nur zum Testen nützlich.

Zugriff auf die Daten

Der letzte Schritt besteht darin, Modell und Vorlage so zu ändern, dass unsere Demonstrationsdaten verwendet werden können:

1. Holen Sie die Datensätze aus der Datenbank, anstatt eine statische Liste zu haben

2. Da search() einen Satz von Datensätzen zurückgibt, die dem Filter entsprechen ("alle Datensätze" hier), ändern Sie die Vorlage so, dass der Name jedes Lehrers gedruckt wird

Starten Sie den Server neu und aktualisieren Sie das Modul (um das Manifest und die Vorlagen zu aktualisieren und die Demo-Datei zu laden) und navigieren Sie dann zu http://localhost:8069/academy/academy/. Die Seite sollte etwas anders aussehen: den Namen sollte einfach eine Nummer vorangestellt werden (die Datenbank-Kennung für den Lehrer).

Unterstützung der Website

Odoo bündelt ein Modul, das der Erstellung von Websites gewidmet ist.

Bisher haben wir Controller ziemlich direkt verwendet, aber Odoo 8 hat eine tiefere Integration und einige andere Dienste (z.B. Standard-Styling, Themes) über das Website-Modul hinzugefügt.

1. erstens, Website als Abhängigkeit zur Akademie hinzufügen

2. fügen Sie dann das Flag website=True auf dem Controller hinzu, dies richtet einige neue Variablen auf dem Anfrageobjekt ein und ermöglicht die Verwendung des Website-Layouts in unserer Vorlage

3. das Website-Layout in der Vorlage verwenden

Das Website-Layout bietet auch Unterstützung für Bearbeitungstools: Klicken Sie auf Anmelden (oben rechts), geben Sie die Anmeldedaten ein (standardmäßig admin / admin) und klicken Sie dann auf Anmelden.

Sie befinden sich nun in Odoo "richtig": die administrative Schnittstelle. Klicken Sie vorerst auf den Menüpunkt Website (oben links).

Wir sind wieder auf der Website, aber als Administrator, mit Zugriff auf erweiterte Bearbeitungsfunktionen, die vom Website-Support zur Verfügung gestellt werden:

- einen Vorlagencode-Editor (HTML-Editor ‣ anpassen), in dem Sie alle für die aktuelle Seite verwendeten Vorlagen sehen und bearbeiten können

- die Schaltfläche "Bearbeiten" oben links wechselt in den "Bearbeitungsmodus", in dem Blöcke (Snippets) und Rich-Text-Bearbeitung verfügbar sind

- eine Reihe anderer Funktionen wie mobile Vorschau oder SEO

URLs und Weiterleitung

Controller-Methoden sind mit Routen über den route()-Dekorator verbunden, der einen Routing-String und eine Reihe von Attributen benötigt, um sein Verhalten oder seine Sicherheit anzupassen.

Wir haben einen "wörtlichen" Routing-String gesehen, der exakt einem URL-Abschnitt entspricht, aber Routing-Strings können auch Konverter-Muster verwenden, die Bits von URLs entsprechen und diese als lokale Variablen verfügbar machen. Wir können zum Beispiel eine neue Controller-Methode erstellen, die ein Bit einer URL nimmt und ausgibt:

Starten Sie Odoo neu und aktualisieren Sie das Modul, dann können Sie die Seite jedes Lehrers besuchen. Versuchen Sie als Übung, Blöcke zu einer Lehrerseite hinzuzufügen, um eine Biographie zu schreiben, dann gehen Sie zu einer anderen Lehrerseite und so weiter. Sie werden feststellen, dass Ihre Biographie von allen LehrerInnen gemeinsam genutzt wird, da Blöcke zur Vorlage hinzugefügt werden, und die Biographie-Vorlage von allen LehrerInnen gemeinsam genutzt wird, wenn eine Seite bearbeitet wird, werden sie alle gleichzeitig bearbeitet.

Feldbearbeitung

Daten, die spezifisch für einen Datensatz sind, sollten in diesem Datensatz gespeichert werden, also lassen Sie uns unseren Lehrern ein neues Biographie-Feld hinzufügen:

Für Datensatzfelder können Vorlagen eine spezielle T-Feld-Richtlinie verwenden, die es erlaubt, den Feldinhalt von der Website aus über feldspezifische Schnittstellen zu bearbeiten. Ändern Sie die Personenvorlage, um t-field zu verwenden:

Starten Sie Odoo neu und aktualisieren Sie das Modul, es gibt jetzt einen Platzhalter unter dem Namen des Lehrers und eine neue Zone für Blöcke im Bearbeitungsmodus. Inhalte, die dort abgelegt werden, werden im entsprechenden Feld für die Biografie des Lehrers gespeichert und sind somit spezifisch für diesen Lehrer.

Der Name des Lehrers ist ebenfalls editierbar, und beim Speichern ist die Änderung auf der Indexseite sichtbar. Das t-Feld kann auch Formatierungsoptionen aufnehmen, die vom genauen Feld abhängen. Wenn wir zum Beispiel das Änderungsdatum für den Datensatz eines Lehrers anzeigen

odoo und Webdesig

 

Wenn Sie als Webdesigner Odoo zum ersten Mal verwenden, sind Sie hier richtig. In dieser Einführung werden die Grundlagen der Erstellung von Odoo-Themen umrissen. Das Odoo-Team hat ein Framework geschaffen, das leistungsstark und einfach zu bedienen ist. Es ist nicht notwendig, spezielle Syntaxen zu kennen, um diesen Satz von Werkzeugen zu verwenden.An introduction for web designers

 

Wenn Sie als Webdesigner Odoo zum ersten Mal verwenden, sind Sie hier richtig. In dieser Einführung werden die Grundlagen der Erstellung von Odoo-Themen umrissen. Das Team von Odoo hat ein Framework geschaffen, das leistungsstark und einfach zu bedienen ist. Sie brauchen keine speziellen Syntaxen zu kennen, um diesen Werkzeugsatz zu verwenden. Von gewöhnlichen CMS bis OdooWenn Sie immer auf die gleiche Weise denken und arbeiten, werden Sie wahrscheinlich die gleichen Ergebnisse erzielen. Wenn Sie etwas völlig Neues wollen, dann probieren Sie etwas anderes aus. Wo ist meine header.php-Datei? Das ist normalerweise die erste Frage eines Webdesigners, der es gewohnt ist, mit Wordpress oder Joomla zu arbeiten und zum ersten Mal auf Odoo zu kommen.

 

In der Tat müssen Sie bei der Verwendung gängiger CMS mehrere Dateien (wie header.php, page.php, post.php usw.) codieren, um eine Grundstruktur für Ihre Website zu erstellen. Bei diesen Systemen dient diese Grundstruktur als Designgrundlage, die Sie im Laufe der Zeit aktualisieren müssen, um die Kompatibilität innerhalb Ihres CMS zu gewährleisten. Selbst nach stundenlangem Kodieren der Dateien haben Sie also noch nicht einmal mit dem Design begonnen. Dies gilt nicht für die Erstellung von Odoo-Themen. Wir sind der Meinung, dass das Design der Themen einfach (und leistungsstark) sein sollte. Als wir unseren Website-Builder erstellt haben, haben wir uns entschieden, bei Null anzufangen, anstatt uns auf das zu verlassen, was bereits vorhanden war. Dieser Ansatz gab uns die Freiheit, uns auf die Dinge zu konzentrieren, die für Designer wirklich wichtig sind: Stile, Inhalt und die Logik dahinter. Wir mussten uns nicht mehr mit technischen Dingen herumschlagen.